Ajout retour chariot

Signaler
Messages postés
1
Date d'inscription
samedi 15 février 2020
Statut
Membre
Dernière intervention
15 février 2020
-
Whismeril
Messages postés
14377
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 mars 2020
-
Bonjour,
j'ai un petit soucis avec une lecture de fichier TXT qui me rajoute un retour chariot dont je ne veux pas . mon code :


le résultat est sur deux lignes au lieu d'une seule :


Je suis novice , la solution est surement simple mais je sèche...
merci d'avance

6 réponses

Messages postés
2096
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
19 mars 2020
89
Bonsoir
Tout d'abord
Msgbox , vbCrLf et Chr
sont des instructions ou fonctions VB6 . VB Net les permet en important la référence "Microsoft Visual Basic" . Pour faire du vrai VB Net il faut enlever cette référence en allant dans les propriétés du projet et en sélectionnant "Références" . Ensuite décocher la référence Microsoft Visual Basic" .
Ensuite que veux-tu obtenir ? Car à mon avis le retour chariot ajouté correspond à
Chr(9)
dans le code que tu nous as mis .
Bonjour,

merci pour cette réponse.
Ce que je souhaite c'est créer un nouvel enregistrement (une chaine de caractéres ) qui ne comporte pas de saut de ligne à l'intérieur de la chaine (ce qui me crée deux lignes et donc vu comme 2 enregistrements).
Quand je concatène mes deux chaines je ne devrait avoir qu'une seule ligne dans mon fichier texte mais en fait j'en ai 2, un saut de ligne reste au milieu de la chaine, que je n'arrive pas à enlever.
Messages postés
14377
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 mars 2020
361
Bonjour

à l'avenir pour poster un code merci d'appliquer ce qui est décrit dans ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Pour enlever tous les fins de lignes et retours chariots, tu peux faire un Replace.

Dim nouvelle as string = texte.Replace(Environment.NewLine, "")

J'ai tapé de tête, il n'est pas exclu qu'il y ait une p'tite coquille.
De plus, Environment.NewLine, considère ce qui est configuré dans ton système (par défaut sur windows CRLF), mais si ton texte vient de Linux ça ne marchera pas.

Pour assurer le coup tu peux aussi faire
Dim nouvelle as string = texte.Replace(char(13), ""c).Replace(char(10), ""c)



Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Bonsoir,

oui j'avais essayé replace avec chr(9) et chr(13) mais pas chr(10) : ça marche !
merci beaucoup
Messages postés
14377
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 mars 2020
361
Oui, un LF suffit normalement (sauf dans word et quelques autres exceptions) à changer de ligne.

Merci de marquer le sujet résolu, avec la roue dentée tout en haut du fil

Quand j'étais petit, la mer Morte n'était que malade.
George Burns
vb95
Messages postés
2096
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
19 mars 2020
89
Bonsoir Whis !
Il n' y a plus de toue dentée maintenant : c'est directement un bouton ( sans aucune méchanceté lol ! )
Modifies ta réponse type .
Messages postés
14377
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 mars 2020
361
Ha les vieilles habitudes!