PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → fichier txt dans champ de saisie
fichier txt dans champ de saisie
Débuté par jf.felix, 06 fév. 2006 14:29 - 3 réponses
Posté le 06 février 2006 - 14:29
bonjour,

j'ai un fichier text presenté comme ceci :
#vers : nom@.societe.com
#message : emxxx.txt
#sujet : prog des mails
#signature : c juste moi
#emetteur : nom@.societe.com

j ai reussi a mettre chaque ligne dans un champs de saisie differents:

sLigne est une chaîne
NumFic est un entier
ligne est un entier = fOuvre("\mails\EMxxx.txt",foLecture)

// Lecture d'une ligne du fichier texte
sLigne = fLitLigne ( ligne )

SI ligne<>-1 ALORS
//Ligne 1 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
vers=Milieu(sLigne,9,50)
//Ligne 2 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
message=Milieu(sLigne,10,50)
//Ligne 3 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
sujet=Milieu(sLigne,10,50)
//Ligne 4 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
signature=Milieu(sLigne,14,50)
//Ligne 5 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
emetteur=Milieu(sLigne,13,50)

FIN

ce code marche tres bien mais ce que je dois faire reellement et de chercher une ligne ou il y a "#" et ensuite mettre la valeur dans un champ de saisie. le fichier peut aussi avoir la forme suivante :
#vers : nom@.societe.com
#message : emxxx.txt
testtesttesttesttesttesttesttest
#sujet : prog des mails
#signature : c juste moi
#emetteur : nom@.societe.com
si quelqu un a une idée?
merci
Posté le 06 février 2006 - 15:38
sLigne est une chaîne
NumFic est un entier
ligne est un entier = fOuvre("\mails\EMxxx.txt",foLecture)

// Lecture d'une ligne du fichier texte
sLigne = fLitLigne ( ligne )

SI Gauche(sLigne)="#" ALORS
SI ligne<>-1 ALORS
//Ligne 1 du C:\EMxxx.txt
.......
Posté le 06 février 2006 - 15:39
Pour ne traiter que les lignes avec #, tu peux utiliser le code suivant :

nFIC,P sont des entiers; C est une chaîne
nFIC=fOuvre("Ton fichier",FOLecture)

TANT QUE Vrai
C=fLitLigne(nFIC)
SI C=EOT ALORS SORTIR
R=Position(C,"#")
SI R>0 ALORS
// Tu récupère tes données à partir de la position R.
FIN
FIN

fFerme(nFIC)
Posté le 06 février 2006 - 15:43
La commande fChargetexte associée à la commande Remplace doit permettre
d'obtenir le résultat recherché.
Par contre, tu peut peut-être directement rechercher Nom@.société.com,
emxxx.txt......

Philippe
http://freedev-web.com

"mickey" <jf.felix@challenge-sud.com> a écrit dans le message de news:
43e729c2$1@news.pcsoft.fr...

bonjour,

j'ai un fichier text presenté comme ceci :
#vers : nom@.societe.com
#message : emxxx.txt
#sujet : prog des mails
#signature : c juste moi
#emetteur : nom@.societe.com

j ai reussi a mettre chaque ligne dans un champs de saisie differents:

sLigne est une chaîne
NumFic est un entier
ligne est un entier = fOuvre("\mails\EMxxx.txt",foLecture)

// Lecture d'une ligne du fichier texte
sLigne = fLitLigne ( ligne )

SI ligne<>-1 ALORS
//Ligne 1 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
vers=Milieu(sLigne,9,50)
//Ligne 2 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
message=Milieu(sLigne,10,50)
//Ligne 3 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
sujet=Milieu(sLigne,10,50)
//Ligne 4 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
signature=Milieu(sLigne,14,50)
//Ligne 5 du C:\EMxxx.txt
sLigne = fLitLigne(ligne)
emetteur=Milieu(sLigne,13,50)

FIN

ce code marche tres bien mais ce que je dois faire reellement et de
chercher une ligne ou il y a "#" et ensuite mettre la valeur dans un champ
de saisie. le fichier peut aussi avoir la forme suivante :
#vers : nom@.societe.com
#message : emxxx.txt
testtesttesttesttesttesttesttest
#sujet : prog des mails
#signature : c juste moi
#emetteur : nom@.societe.com
si quelqu un a une idée?
merci