OVH Cloud OVH Cloud

Lecture dans des variables string

12 réponses
Avatar
SAISAS
Je ne me souviens plus comment on lit une chaine de caractères comme si
c'était un fichier streeam (c'est à dire, que l'on récupère explicitement
chaque ligne).

Si j'ai révé, j'essaierai la fonction split (texte, vbCrLf)

Merci.

2 réponses

1 2
Avatar
Driss HANIB
ou peut être la fonction replace

"Gloops" a écrit dans le message de
news:%
SAISAS a écrit :
> Je reproche à mon code de ne pas gérer correctement les différentes


formes de
> passage à la ligne. Dans la majorité des cas, le code inséré est vbCrLf,


mais
> de temps en temps, et sans que j'en connaisse la logique, on retrouve


vbCr
> tout seul, ou vbLf tout seul ...

Bonjour,

Il me semble avoir rencontré ce problème un jour.
Il y a deux explications possibles : ou une chaîne provenant d'un
programme pas très bien écrit de ce point de vue, ou un fichier
provenant d'une autre plate-forme.

Je crois bien que je m'en étais sorti avec une routine de rectification,
un peu dans ce style-là (je dis ça de tête, il faudrait tester) :

'j'ai été tenté de mettre strTest plutôt que Test, mais ça faisait
'des lignes trop longues pour les newsgroups.

booTest = True
While booTest
booTest = False
For N = 1 to Len(Test) - 1
If Mid$(Test, N, 1) = vbCr And Mid$(Test, N + 1, 1) <> vbLf Then
Temp = Left$(Test, N) + vbLf + Mid$(Test, N + 1)
Test = Temp
booTest = True
End If
Next
For N = 2 to Len(Test)
If Mid$(Test, N - 1, 1) <> vbCr And Mid$(Test, N, 1) = vbLf Then
Temp = Left$(Test, N - 1) + vbCr + Mid$(Test, N)
Test = temp
booTest = True
End If
Next
Wend


Avatar
SAISAS
Merci à tous ...

PS : en fait, mon problème était sur des zones de texte (textbox et
richtextbox) qui semblaient réagir un peu spécialement sur la saisie Entrée
et sur la saisie ctrl+Entrée.

"Driss HANIB" a écrit :

ou peut être la fonction replace

"Gloops" a écrit dans le message de
news:%
> SAISAS a écrit :
> > Je reproche à mon code de ne pas gérer correctement les différentes
formes de
> > passage à la ligne. Dans la majorité des cas, le code inséré est vbCrLf,
mais
> > de temps en temps, et sans que j'en connaisse la logique, on retrouve
vbCr
> > tout seul, ou vbLf tout seul ...
>
> Bonjour,
>
> Il me semble avoir rencontré ce problème un jour.
> Il y a deux explications possibles : ou une chaîne provenant d'un
> programme pas très bien écrit de ce point de vue, ou un fichier
> provenant d'une autre plate-forme.
>
> Je crois bien que je m'en étais sorti avec une routine de rectification,
> un peu dans ce style-là (je dis ça de tête, il faudrait tester) :
>
> 'j'ai été tenté de mettre strTest plutôt que Test, mais ça faisait
> 'des lignes trop longues pour les newsgroups.
>
> booTest = True
> While booTest
> booTest = False
> For N = 1 to Len(Test) - 1
> If Mid$(Test, N, 1) = vbCr And Mid$(Test, N + 1, 1) <> vbLf Then
> Temp = Left$(Test, N) + vbLf + Mid$(Test, N + 1)
> Test = Temp
> booTest = True
> End If
> Next
> For N = 2 to Len(Test)
> If Mid$(Test, N - 1, 1) <> vbCr And Mid$(Test, N, 1) = vbLf Then
> Temp = Left$(Test, N - 1) + vbCr + Mid$(Test, N)
> Test = temp
> booTest = True
> End If
> Next
> Wend





1 2