Lecture d'un fichier texte.

Signaler
Messages postés
3
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2005
-
Messages postés
3
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2005
-
Bonjour,
En C# (CSharp), j'aimerais lire un fichier texte et récupérer les données qui le composent ligne par ligne et les stocker dans des variables.
Sachant que dans la ligne peut être comme ci-dessous :° né le, x marié le, + = dcd le
425 Nom prenom1 prenom2 ° 02/03/1924 Lyon x ../../1945 Valence + 1980 Lille
434 Nom prenom1 prenom2 ° 02/03/1920 Paris x 1947 + 1980 Paris
Dans ce cas les champs devraient contenir :
numero 425, nom Nom, prenom = prenom1 prenom2, dateNaiss = 02 03 1924 villenaiss = Lyon datemar = 1945 villemar = valence datedc = 1980 ville dc = Lille
numero 434, nom Nom, prenom = prenom1 prenom2, dateNaiss = 02 03 1920 villenaiss = Paris datemar = 1947 villemar = "" datedc = 1980 viledc= Lille

J'ai pensé analyser ligne par ligne et caractère par caractère en passant par une boucle switch, mais je ne peux pas utiliser case (char.isLetter(ligne(index)) ou case (char.isNumber(ligne(index)).
Je peux l'utiliser pour tester °, +, x mais pas pour les autres caractères. Et s'il faut faire le case sur toutes les lettres de l'alphabet en majuscule et en minuscule et sur tous les chiffres, ce n'est pas jouable.

Quelqu'un aurait-il la réponse à ma question ?
Merci d'avance.

jjhoareau

5 réponses

Messages postés
52
Date d'inscription
jeudi 28 octobre 2004
Statut
Membre
Dernière intervention
24 août 2005
1
Utilise la classe TextReader pour lire ton fichier ligne par ligne et
ensuite la classe Regex pour realiser une expression réguliere sur la
ligne pour récupérer tes informations.

Miiitch
Messages postés
341
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
10 février 2009
2
Pourquoi n'utilise tu pas un fichier xml ?
Messages postés
341
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
10 février 2009
2
[Suite] ta ligne serait un truc du genre :
numero 425, nom Nom, prenom = prenom1 prenom2, dateNaiss = 02 03 1924 villenaiss = Lyon datemar = 1945 villemar = valence datedc = 1980 ville dc = Lille


<Ligne numero="425" Nom="machin" Prenom="truc, chose">


<Noeud info="Mariage" date="" ville=""/>
<Noeud info="Naisance" date="" ville=""/>
<Noeud info="dc" date="" ville=""/>
</Ligne>
Messages postés
3
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2005

Bonjour,

Merci pour votre réponse, je ne connaissais pas Re
Messages postés
3
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2005

Bonjour,

Je n'utilise pas XML car cela ne convient pas pour ce que je veux faire. Je dois récupérer un fichier texte et regénérer un autre fichier texte avec un format différent.
Merci tout de même pour votre réponse.