Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Insérer des guillemets dans un fichier texte

5 réponses
Avatar
Guy Lafrenière
Bonjour Collègues,

Je veux enregistrer des chaînes de caractères dans un fichier texte en
incluant les guillemets.

Sous VB6 j'aurais écrit quelque chose comme ceci:
MonFichier.WriteLine chr(34) & "Ma chaîne de caractères" & chr(34)

Comment écrire l'équivalent sous VB2005.

Je connais l'objet StreamWriter. Mon questionnement concerne l'insertion des
guillements dans le fichier texte.

Merci!

Guy Lafrenière

5 réponses

Avatar
Fred
Dans : news:,
Guy Lafrenière disait :
Bonjour Collègues,



Bonjour,

Je veux enregistrer des chaînes de caractères dans un fichier texte en
incluant les guillemets.

Sous VB6 j'aurais écrit quelque chose comme ceci:
MonFichier.WriteLine chr(34) & "Ma chaîne de caractères" & chr(34)



En vb.NET (comme en vb6 d'ailleurs), j'utilise le doublement de
guillemets.

MonFichier.WriteLine """Ma chaîne de caractères"""



--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
Guy Lafrenière
Bonjour Fred,

Merci pour ta réponse.

Mon exemple concernait une chaîne de caractères connu.

Comment faire si elle est dans une variable?

Exemple :

Dim strTexte As String
strTexte = "Ceci est mon texte"
file.WriteLine """ & strTexte & """

Ce code ne fonctionne pas.

Je reviens à ma question initiale. Quel est l'équivalent de la fonction VB6
Chr(34) dans VB2005?

Merci!

Guy Lafrenière
Avatar
Bill2
Guy Lafrenière wrote:
Bonjour Fred,



Comment faire si elle est dans une variable?

Exemple :

Dim strTexte As String
strTexte = "Ceci est mon texte"
file.WriteLine """ & strTexte & """





file.WriteLine """" & strTexte & """"

là, faut savoir bien compter !
1 guillemet pour l'ouverture
2 guillemets pour reprensenter une chaine contenant un guillemet
1 guillemet pour la fermeture

ensuite concaténation avec ta variable
et Re-tas de guillemets pour conclure

en gros, si on rajoutais un du texte, ça donnerait ça :
"texte1""texte2"

la chaine contient un guillement au milieu de texte1 et texte2
et donc si tu supprimes texte1 et texte2, tu te retrouves avec 4 guillemets
collés, représentant en mémoire une chaine correspondant à un guillemet
(euh, je sais pas si je suis bien clair là ....)

--
Bill2
Avatar
Fred
Dans : news:%,
Guy Lafrenière disait :
Bonjour Fred,



Bonjour,

file.WriteLine """ & strTexte & """
Ce code ne fonctionne pas.



Il faut doubler les guillemets comme je l'ai indiqué :
file.WriteLine """" & strTexte & """"


Je reviens à ma question initiale. Quel est l'équivalent de la
fonction VB6 Chr(34) dans VB2005?




Je ne sais pas s'il y a un équivalent. Le framework gère les encodages,
il n'y a pas d'équivalence fixe entre un nombre et un caractère. On peut
donc passer par l'espace de nom System.Text mais c'est un peu compliqué
pour si peu.

Sinon, dans l'espace de noms Microsoft.VisualBasic, il y a une
énumération ControlChars.

On écrit alors ControlChars.Quote en place de Chr(34).



--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Avatar
Guy Lafrenière
Bonjour Fred et Bill2,

Vous avez réglé mon problème. Merci!

Guy Lafrenière


"Guy Lafrenière" a écrit dans le message de
news: %
Bonjour Fred,

Merci pour ta réponse.

Mon exemple concernait une chaîne de caractères connu.

Comment faire si elle est dans une variable?

Exemple :

Dim strTexte As String
strTexte = "Ceci est mon texte"
file.WriteLine """ & strTexte & """

Ce code ne fonctionne pas.

Je reviens à ma question initiale. Quel est l'équivalent de la fonction
VB6 Chr(34) dans VB2005?

Merci!

Guy Lafrenière