Discussion:
Optimisation
(trop ancien pour répondre)
OlivierH
2010-05-20 07:51:47 UTC
Permalink
Bonjour à tous,

Pour ecrire des fichiers textes d"une 100aine de ligne.
Le + simple est : TEXT To dans une variable
ou set alternate to avec des print ?

ps : j'aimerais mettre des commentaires pour informations avant les
print ou <<>>

d'avance merci
Olivier,
Thierry
2010-05-20 08:30:19 UTC
Permalink
Bonjour,

Je n'utilise jamais SET ALTERNATE.

J'utilise beaucoup ceci, c'est très performant :

SET TEXTMERGE ON TO MEMVAR cTexte NOSHOW
\ ...<<var>>...
IF
\\ ....
ELSE
\\ ...
ENDIF
SET TEXTMERGE TO
--
Thierry
Post by OlivierH
Bonjour à tous,
Pour ecrire des fichiers textes d"une 100aine de ligne.
Le + simple est : TEXT To dans une variable
ou set alternate to avec des print ?
ps : j'aimerais mettre des commentaires pour informations avant les
print ou <<>>
d'avance merci
Olivier,
OlivierH
2010-05-20 08:46:13 UTC
Permalink
Bonjour Thierry,

Le fait de tout mettre dans une variable
tu n'as pas eu de ralentissement ou dépassement de capacité ?

Merci pour ta réponse.

Olivier,
Post by Thierry
Bonjour,
Je n'utilise jamais SET ALTERNATE.
SET TEXTMERGE ON TO MEMVAR cTexte NOSHOW
\ ...<<var>>...
IF
\\ ....
ELSE
\\ ...
ENDIF
SET TEXTMERGE TO
Thierry
2010-05-20 09:16:18 UTC
Permalink
La même commande peut remplir directement un fichier texte, sans passer par
une variable.
--
Thierry
Post by OlivierH
Bonjour Thierry,
Le fait de tout mettre dans une variable
tu n'as pas eu de ralentissement ou dépassement de capacité ?
Merci pour ta réponse.
Olivier,
Post by Thierry
Bonjour,
Je n'utilise jamais SET ALTERNATE.
SET TEXTMERGE ON TO MEMVAR cTexte NOSHOW
\ ...<<var>>...
IF
\\ ....
ELSE
\\ ...
ENDIF
SET TEXTMERGE TO
OlivierH
2010-05-20 09:43:43 UTC
Permalink
Très bonne nouvelle,
merci de ce rafraichissement.

@+
olivier,
Post by Thierry
La même commande peut remplir directement un fichier texte, sans passer par
une variable.
eddymaue
2010-05-20 23:29:02 UTC
Permalink
Salut Olivier, si j'ai bien lu, set textmerge travaille avec les
fonctions fonction de bas niveaux comme fopen, fclose .... etc. Bref
set textmerge gère pour toi tout le fonctionnement de bas niveaux.

\ et \\ c'est fwrite(_text) l'un avec

set textmerge to Tonfichier ... --> _text = fopen("TonFichier") et tu
trouve le handle dans _TEXT

set Textmerge memvar TaVar ... -- >

_MemVar = "TaVar"
_TmpFile = sys(2015)
_text = FOpen(_TmpFile)
fwrite(...,_text)
fwrite(...,_text)
fwrite(...,_text)
fwrite(...,_text)

fclose(_text)
&_MemVar = filetostr(_TmpFile)


Voilà en gros comment fonctionne Set Textmerge to

&& mélanger bas niveau avec haut niveau

Local lcF1, lcF2, hF1, hF2

lcF1 = "MonFichier1.txt"
lcF2 = "MonFichier2.txt"

set textmerge to (lcF1)
hF1 = _text

_text = -1
set textmerge to (lcF2)
hF2 = _text

_text = hF1
\ j'écris dans le fichier 1

_text = hF2
\ j'écris dans le fichier 2

fclose(hF1)
fClose(hF2)

Modify File (lcf1) nowait
Modify File (lcf2) nowait


Bonne soirée OlivierH

a+ Eddy
Post by OlivierH
Très bonne nouvelle,
merci de ce rafraichissement.
@+
olivier,
Post by Thierry
La même commande peut remplir directement un fichier texte, sans passer par
une variable.
Jean à Grenoble
2010-05-21 07:54:59 UTC
Permalink
J'aime bien aussi SET TEXTMERGE.

Il faut faire attention à commencer le fichier par \\ sinon on a un
retour chariot en tout début et ce n'est pas joli.
On peut 'imprimer' un champ MEMO qui contient lui-même des << >> et le
remplacement a lieu !! La syntaxe est à maitriser !
En plus de \ et \\ on peut avoir TEXT ENDTEXT

Bonne journée à tous
Jean à Grenoble

Loading...