Ouvrir fichier txt pour y faire des modifs

cs_rescator68 Messages postés 24 Date d'inscription dimanche 13 juillet 2003 Statut Membre Dernière intervention 5 novembre 2011 - 22 août 2005 à 19:56
cs_rescator68 Messages postés 24 Date d'inscription dimanche 13 juillet 2003 Statut Membre Dernière intervention 5 novembre 2011 - 23 août 2005 à 22:18
bonjour

je vous expose mon problème.

j'ai un fichier TXT qui a un nombre de ligne variable (entre 10 et 500)
chaque ligne se présente ansi

toto 012 023 0012345678 1 1 1 1

(les valeurs sont des exemples)
chaque "champ" est séparé par un TAB

il faut que je puisse ouvrir mon fichier dans une grille (type excel) que je puisse y apporter des modifs, ajouter des lignes ou en enlever, puis que je puisse sauvegarder le fichier pour qu'il respecte de nouveau mon exemple.
je précise que j'utilise VB6. pas de .NET

si qq aurait une idée ou la solution à mon problème...

Merci d'avance pour votre aide

4 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
22 août 2005 à 23:49
Bonsoir,

Je ne sais pas comment ouvrir un fichier txt dans une grille (jamais
essayé), personnelement j'utilise un TextBox avec la propriété
multiligne à True, j'ouvre mon fichier, le modifie puis l'enregistre
avec les changements.Si je veux conserver l'ancien fichier,
j'enregistre sous un autre nom.



Private Sub cmdOuvrir_Click()

Dim crlf, tout, texte

On Error Resume Next

crlf = Chr(13) + Chr(10)

Open "C:\MonFichier.txt" For Input As #1

Line Input #1, texte

tout = texte

If Len(tout) <> 0 Then

While Not EOF(1)

Line Input #1, texte

tout = tout + crlf + texte

Wend

End If

Text1.Text = tout

Close #1

End Sub



Private sub cmdEnregistrer_Click()

Open "C:\MonFichier.txt" For Output As #1

Print #1, Text1.Text

Close #1





jpleroisse
0
cs_rescator68 Messages postés 24 Date d'inscription dimanche 13 juillet 2003 Statut Membre Dernière intervention 5 novembre 2011
23 août 2005 à 00:22
oui ca je sais faire. mais ca ne répond pas à mon problème, car si par mégarde je remplace un TAB entre deux colonnes, ou si je rajoute un espace, bref si je fait la moindre erreur, mon fichier ne pourra plus être utilisé dans le reste de mon application.
Pour cela, actuellement j'ouvre excel, je modifie mon fichier, puis l'enregistre au format texte. Mais mon appli doit tourner sur une machine qui n'a pas excel. on doit donc pouvoir modifier le fichier depuis mon appli VB, y faire des modifs, mais surtout pas toucher à la structure du fichier
0
domsig Messages postés 125 Date d'inscription lundi 6 septembre 2004 Statut Membre Dernière intervention 11 mai 2010
23 août 2005 à 09:05
eh bien moi j'utiliserais un flexgrid (ou un composant similaire), je lirais mon fichier ligne à ligne ; j'analyserais chaque ligne pour trouver les tab, et chaque donnée ainsi isolée serait placée dans une colonne du grid sur la même ligne ; ensuite je passe à la ligne suivante du fichier et du grid.
Pour enregistrer je parcourerais le grid, je rajouterai un tab entre chaque donnée et j'écrirais le fichier...
un peu lourd mais ça pourrait marcher !
0
cs_rescator68 Messages postés 24 Date d'inscription dimanche 13 juillet 2003 Statut Membre Dernière intervention 5 novembre 2011
23 août 2005 à 22:18
oui ca me semble un peu lourd. mais je vais essayer cette solution puisque je n'en trouve pas d'autre.
des nouvelles demain.
0
Rejoignez-nous