begin process at 2010 02 10 11:21:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Système

 > 

Fichier & Disque

 > 

repere dans un fichier texte


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

repere dans un fichier texte

jeudi 23 août 2007 à 17:47:10 | repere dans un fichier texte

yabiyou

Voila mon problème

J'ai un fichier texte, Nomfichier[0], je le parcours avec streamearder et stok les valeurs dans une arraylist. je veux repérer dans mon fichier le numero de la ligne contenant "# heure d'acquisition". Je n'arrive pas à savoir si c'est le bon code car quand j'essaie de convertir repere en string et l'afficher dans un label j'ai un message d'erreur...
voicii le code:

StreamReader

sr = newStreamReader(Nomfichier[0]);

String ligne;

ArrayList maListe = newArrayList();

 

int taille;

taille = 0;

while ((ligne = sr.ReadLine()) != null)

{

maListe.Add(ligne);

}

sr.Close();

int repere =maListe.IndexOf("# heure d'acquisition");

label1.Text = repere.ToString;

jeudi 23 août 2007 à 18:00:58 | Re : repere dans un fichier texte

_Syl_

Bonjour,

tel qu'est écrit ton code tu récupère la position de la chaine "# heure d'acquisition" dans ton objet liste.
L'erreur que tu obtiens est logique puisque c est dans les objets de ta liste (maListe[unePosition]) que tu as inséré les lignes de ton fichier.

Tu peux donc boucler sur tous les éléments de ta liste afin de regarder dans chacun d'entre eux si la chaine que tu cherches s'y trouve.

int laLigne=-1;
for(int i=0;i<maListe.Items.Count;i++)
{
if(maListe[i].IndexOf("tachaine")>0)
{
laLigne=i;
}
}

label1.Text = laLigne.ToString();

(je suis pas sur pour la récupération de la taille de la liste, le Items.Count, mais de mémoire je crois que c est ca)


Tu es sûr que la chaine en question n'apparait qu une fois dans le fichier ? Sinon tu ne récupèreras que la ligne de sa derniere occurence avec cette méthode.

Tiens nous au courant

Bonne fin de journée

_Syl_
vendredi 24 août 2007 à 09:44:06 | Re : repere dans un fichier texte

yabiyou

ça à pas l'air de fonctionner:
message d'erreur: object (maliste[i]) ne contient pas de défintion pour Indexof...

int laLigne=-1;

for(i=0;i<maListe.Count;i++)

{

if(maListe[i].IndexOf("# liste des mesures : Balayage=xx.xx Amplitude=xx.xx Phase=xx.xx [amp. phase pour voies suivantes]")>0)

{

laLigne=i;

}

}

vendredi 24 août 2007 à 10:07:39 | Re : repere dans un fichier texte

_Syl_

Bonjour,

Essaie avec un

if(maListe[i].ToString().IndexOf("tachaine")>0)



_Syl_
vendredi 24 août 2007 à 10:30:38 | Re : repere dans un fichier texte

yabiyou

Ca ne marche pas non plus...
j'ai i = -1
vendredi 24 août 2007 à 11:16:55 | Re : repere dans un fichier texte

_Syl_

Ca veut dire que la ligne :
"# liste des mesures : Balayage=xx.xx Amplitude=xx.xx Phase=xx.xx [amp. phase pour voies suivantes]"

ne se trouve nul part dans ton fichier

Quel est ton code exact ?
vendredi 24 août 2007 à 11:38:20 | Re : repere dans un fichier texte

yabiyou

La ligne existe bien à la ligne 75 donc dans maListe[74]
Mon code est le suivant:

StreamReader

sr = newStreamReader(Nomfichier[0]);

String ligne;

ArrayList maListe = newArrayList();

while

((ligne = sr.ReadLine()) != null)

{

maListe.Add(ligne);

}

sr.Close();

 

for(i=0;i<maListe.Count;i++)

{

if (maListe[i].ToString().IndexOf("# liste des mesures : Balayage=xx.xx Amplitude=xx.xx Phase=xx.xx [amp. phase pour voies suivantes]") > 0)

{

laLigne=i;

}

}

label1.Text=laLigne.ToString();

vendredi 24 août 2007 à 11:59:33 | Re : repere dans un fichier texte

_Syl_

La ligne existe dans le fichier ?
avec des xx.xx ?
si tu ouvres ton fichier dans un editeur de texte et que tu fais une recherche pour "# liste des mesures : Balayage=xx.xx Amplitude=xx.xx Phase=xx.xx [amp. phase pour voies suivantes]" il trouve ta ligne ?
Quand tu debug tu peux voir la ligne dans ta liste ?
vendredi 24 août 2007 à 13:19:44 | Re : repere dans un fichier texte

yabiyou

Quand j'ouvre le fichier avec notepad il me trouve bien  la ligne.
Par contre je sais pas utiliser le debug... ça fait une semaine que je fait du C# seulement.
vendredi 24 août 2007 à 14:47:15 | Re : repere dans un fichier texte

_Syl_

Bon donc à priori la ligne existe dans le fichier

Pour le Debug, tu peux mettre des points d'arrets

Tu cliques dans la fine colonne grise à gauche pour qu'un point rouge apparaisse en face de la ligne sur laquelle tu souhaites que le programme s'arrete.
Tu peux en mettre un sur la ligne
for(i=0;i<maListe.Count;i++)

Ensuite quand tu vas lancer ton appli via la touche F5, lorsque le programme arrivera à cette ligne il s'arrêtera et tu pourras voir le contenu de ta liste soit en cliquant dessus soit dans l explorateur automatique (les onglets du bas)

une fois que tu peux voir ce qu'il y a dans ta liste regarde aux environs de liste[74] pour voir ce qu'elle contient.

N'hésite pas à reposer des questions si je n'ai pas été assez précis (ce qui est surement le cas :))

_Syl_

1 2

Cette discussion est classée dans : fichier, ligne, texte, repere, sr


Répondre à ce message

Sujets en rapport avec ce message

Effacer une ligne d'un fichier texte [ par fafelle1 ] Bonjour, voila je vous explique mon petit probleme, si quelqu'un sais la reponse ou peut m'aider cce serai pas de refu :-)Bref voici mon souci : Je me Problème retour à la ligne dans un fichier texte [ par goldeneagle_4 ] Bonjour à tous,voilà j'ai un problème, j'utilise en C#.Net une richbox dans laquelle j'affiche du texte puis à partir du contenu de la richbox, je cré Lecture d'un fichier texte. [ par jjhoareau ] 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. fichier texte [ par ducker88 ] Bonjour à tous,J'aimerai savoir s'il existe un moyen rapide et simple de parcourir chaque ligne d'un fichier.J'enregistre des données dans un fichier Supprimer ligne vide dans fichier txt [ par LilBisk ] Bonjour à tous! J'ai fait un sous-programme permettant de lire un fichier .txt, récupérer les informations séparées par des ";" et il lit tout le fic [c#] ouverture et affichage de plusieurs fichiers en meme temps ! [ par vto59 ] Bonjour a tous, Ce que je souhaite faire, c'est ouvrir plusieurs fichiers en meme temps et les rassembler en un seul fichier ! J'ai essayer ça : [ fichier log [ par macadelino ] Bonjours ,mon pb est le suivant :j'ai un fichier que j'ai ouvert et ensuite mis dans une liste à travers chaque ligne du fichier.j'ai fait une fonctio scan d'un fichier texte [ par babaOrhumette ] Bonjour, Je me permets de créer un nouveau sujet car je ne trouve pas forcement ce qu'il me faudrait sur le web. J'espère ne pas m'être trompé de se Lecture données complexes dans fichier .txt [ par mimips2 ] Bonjour à tous, je suis nouveau sur le forum mais aussi en programmation.Ce que j'aimerais c'est de chercher dans un fichier .txt un numéro de la form Ecrire dans un fichier ASCII a partir d'une certaine ligne [ par peyramay ] Bonjour a tous, Dand le cadre d'un projet pour mon travail, je dois écrire dans un fichier texte en ASCII à partir d'une certaine ligne, ces lignes ét


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales