Traitement text [Résolu]

Signaler
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
bonjour
j' ai besoin d'aide pour transformer un fichier texte plein ecrit de debut jusque a la fin , en un texte qui a 2 caracteres par ligne .merci

7 réponses

Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
Ouvrir fichier texte, lire contenu, couper chaine de caractères, écrire fichier.
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
As-tu essayé quelque chose ?
Un bout de code ?
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

non je ne sais pas comment .
quand on lit une ligne comment le dire pour sélectionner 2 charactere et de revenir a la ligne
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
Quelle version de VB ?
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

vb6
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
Regardes l'instruction "Mid" et la concaténation de chaines ainsi que la constante VbCrLf.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Bonjour, et un salut à whismeril
VB6 est assez agile.
Regarde :
toto = "1234567890"
titi = Split(StrConv(toto, vbUnicode), Chr(0))
For i = 1 To UBound(titi) - 1 Step 2
titi(i) = titi(i) & vbCrLf
Next
MsgBox Join(titi, "")
Messages postés
14882
Date d'inscription
mardi 11 mars 2003
Statut
Non membre
Dernière intervention
21 octobre 2020
446
Salut à toi aussi, mais cette fois je n'y suis pour rien ;-)
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

j ai essayer sa mais sa marche pas

Fichier = FreeFile

Open "C:\0.txt" For Input As #Fichier
While Not EOF(Fichier)
Line Input #Fichier, ligne

toto = ligne
titi = Split(StrConv(toto, vbUnicode), Chr(0))
For i = 1 To UBound(titi) - 1 Step 2
titi(i) = titi(i) & vbCrLf
Next
Text1.Text =Join(titi, "")

Wend

Close #Fichier
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
1) "ça ne marche pas" ne veut rien dire sans précision ! Erreur ? Laquelle. Résultat non espéré ? Lequel ?
2) la totalité de ton fichier doit être lue dans la variable toto, ainsi :
 Dim FF As Integer: FF = FreeFile
Open "C:\0.txt" For Input As #FF
toto = Input(LOF(FF), #FF)
Close #FF

(puis traitement de toto
3) j'espère que ton fichier ne pèse pas plus de 2 MO, tout de même ! Sinon, tu vas être obligé de le découper pour le traiter.

Pour ton info : j'ai quand-même testé ===>> "marche"


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

bonjour
j ai essayé ce code
Dim FF As Integer: FF = FreeFile
Open "C:\0.txt" For Input As #FF
toto = Input(LOF(FF), #FF)
Close #FF
titi = Split(StrConv(toto, vbUnicode), Chr(0))
For i = 1 To UBound(titi) - 1 Step 2
titi(i) = titi(i) & vbCrLf
Next
MsgBox Join(titi, "")

et sa marche bien , mais quand je rederige le resultat dans une textbox text1.text=Join(titi, "") sa marche pas ; il me renvois le meme text enligne et c est pas ce que je veux
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018
>
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

desolé mes amis j ai pas decocheé la propriété multiline a true
et s ma rche bien merci

Dim FF As Integer: FF = FreeFile
Open "C:\0.txt" For Input As #FF
toto = Input(LOF(FF), #FF)
Close #FF
titi = Split(StrConv(toto, vbUnicode), Chr(0))
For i = 1 To UBound(titi) - 1 Step 2
titi(i) = titi(i) & vbCrLf
Next
Text1.Text = Join(titi, "")
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
cela veut tout simplement dire que tu n'as pas réglé les propriétés de ta textbox en multiline !
C'est quand-même fort du café d'avoir à te le dire !
Messages postés
11
Date d'inscription
dimanche 1 mai 2016
Statut
Membre
Dernière intervention
3 juin 2018

sa fait longtemps que j ai pas programmé , on oublies quelques détails importants. merci pour tout.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Bon ...
Veux-tu bien maintenant libérer cette discussion ? (un clic sur le tag RESOLU au niveau de ton premier message). Merci d'y penser.