m1b
Messages postés2Date d'inscriptionlundi 6 février 2006StatutMembreDernière intervention 9 février 2006
-
8 févr. 2006 à 23:04
hamidkhelifa
Messages postés10Date d'inscriptionlundi 7 juillet 2003StatutMembreDernière intervention21 juin 2006
-
14 févr. 2006 à 22:31
Hello,
Je sais il y a beaucoup de post sur la lecture des fichiers
textes, je les ai lus mais je n'ai pas réussi à m'en sortir... ( je
suis débutant en c++ ) En gros voilà ce qui se passe,j'ai créer
une fenètre avec 2 boutons je presse sur mon bouton 1
ça me crée un fichier test.txt dans c: Ok c'est bon. Ensuite un autre
bouton lorsque je clique va lire le fichier texte et afficher son
contenu dans un champ , mais ce qui se passe avec ma boucle c'est qu'il
arrive sur la dernière ligne du fichier texte sur "
1926 Fully" et il ne m affiche que
1926 Fully
dans mon champ, et je n 'arrive pas à comprendre pourquoi les autre lignes ne sont pas affichées...
si vous pouviez me donner un coup de pouce ça serait super
Voilà le code ( plus bas encore il y a un second code j 'ai essayé
d'une autre manière mais je pense que le plus facile à corriger c'est
le code 1 le 2 eme je l'ai juste mis comme ça pour voir...) pour ce
code 1 il ne doit pas manqué beaucoup pour que le programme
fonctionne...
Dvdmizo
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 3 mai 2006 9 févr. 2006 à 14:26
salut,
je pense que ton problème vient du fait que tu utilises un composant
TEdit pour faire tes affichages. Ce composant n'est pas multilignes
donc il ne t'affiche pas tout ça me parait normal de plus tu fais ceci :
while (std::getline(fichierRapport, ligne)) // tu lis une ligne
{
std::cout << ligne
<< std::endl; // tu l'affiches ? (c'est pas vraiment
l'idéal avec C++ Builder)
//
et tu boucles tant qu'il reste des lignes à lire en écrasant à chaque
fois l'ancienne ligne dans ta variable
}
// donc forcément quand tu arrives ici, ta variable ne contient plus que la dernière ligne
edResult->Text = ligne.c_str();
Essaye de placer un TMemo sur ta fiche et de lui affecter ce que tu lis depuis ton fichier :
// ici le Memo s'appelle par exemple : Memo1
while (std::getline(fichierRapport, ligne))
{
Memo1->Lines->Add(ligne) ; // on ajoute la ligne lue au memo
}
m1b
Messages postés2Date d'inscriptionlundi 6 février 2006StatutMembreDernière intervention 9 février 2006 9 févr. 2006 à 17:56
merci bien , j'ai modifier encore certaines chose et maintenant c'est
ok, il faut que je trouve encore des informations sur comment
traiter le texte de manière à ce qu'il le lise sur une seule ligne
maintenant il le lit
xxxxxx
xxxxx
xxxxxx
xxxxx
et il faut que j'arrive à xxxxxxx xxxxxxx xxxxxx xxxxxx
je pense que je doit dire supprime "/n" ou ne tient pas compte de "/n"
hamidkhelifa
Messages postés10Date d'inscriptionlundi 7 juillet 2003StatutMembreDernière intervention21 juin 2006 14 févr. 2006 à 22:06
Salut!!!
en faite tu peut aussi mettre ton fichier sure uneligne dans un Tedit
edResult->Text = ligne.c_str();cette ligne de code permet d'ecrire un texte sur la ligne existante ..c pour ça que a la fin tu n'a que la dernier ligne sur ton Tedit
le code corecte c cette ligne edResult->Text=edResult->Text+ligne.c_str();
ça te permet de adiciner toute les ligne sur un Tedit.