Conserver mise en forme richtexbox enregistré au format txt [Résolu/Fermé]

Signaler
Messages postés
10
Date d'inscription
dimanche 1 janvier 2017
Statut
Membre
Dernière intervention
10 janvier 2017
-
Messages postés
10
Date d'inscription
dimanche 1 janvier 2017
Statut
Membre
Dernière intervention
10 janvier 2017
-
Bonjour, J'aimerai savoir si cela est possible de conserver une mise en forme de base chargé dans une richtexbox puis la sauvegarder grâce à mon bouton sans changement dans une fichiers txt.

Fichier de base:
(Cp) (Quantité)
123456 12
245621 9
...

Fichier après enregistrement:
123456 12 234567 9


Mon bouton:
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

        System.IO.File.WriteAllText(TextBox1.Text, RichTextBox1.Text)

    End Sub



J'ai tenté en rtf, mais le logiciel de mon magasin le lit comme le "fichier après enregistrement" et du coup n'arrive pas importer la liste de code produit et la quantité
Je suis en Visual Basic Windows Form. Une idée ?

Merci pour vos réponses.


3 réponses

Messages postés
15799
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 avril 2021
685
Bonsoir

ton exemple montre 4 nombres en 2 colonnes et 2 lignes qui deviennent 4 nombres en ligne.
Est ce que tu veux obtenir?

Par ce que là dedans, je ne vois pas bien ce que vient faire le rtf qui sert à pouvoir conserver des changements de police ou d'apparence (gras, italique, souligné, couleur....) de parties du texte. Ni même le RichTextBox qui sert à afficher ces changements ou à les appliquer.

Si ton but est de mettre en ligne un fichier en colonne, il suffit de charger tout le texte dans une variable, de remplacer le saut de ligne par un espace et d'écrire le résultat dans un autre fichier.
Messages postés
10
Date d'inscription
dimanche 1 janvier 2017
Statut
Membre
Dernière intervention
10 janvier 2017

En faite j'ai un scanner de code pour inventaire. Lorsque l'on le vide sur notre logiciel, on peut récupérer le vidage en .VID. Il peut être lu par n'importe quel éditeur de texte. Sauf que le fichier est du type 2 colonnes X nombre de ligne.

Du coup je m'exprime mal. Je veux sauvegarder le fichier tel qu'il est de base pour que le logiciel du magasin le retrouve dans son format.

Sauf que pour le moment quand je sauvegarde il me met les colonnes en ligne dans le fichier .txt

Quand je recharge le fichier dans la RTB, il est en colonne.

Je l'ouvre ensuite avec un éditeur comme wordpad, il est en colonne.

Le logiciel du magasin le lit malgré tout en ligne donc au format txt pur et dur.

Là est mon problème.
Messages postés
15799
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 avril 2021
685
Si je comprends bien
Wordpad le lit en colonne, ainsi que ton richtextbox et c'est ce que tu veux.

Par contre notepad le lit en ligne.

Si c'est bien ça c'est probablement un fichier au format unix. Pour Windows un saut de ligne c'est \r\n, alors que pour unix \n suffit.
Wordpad sait s'en débrouiller alors que notepad non.

Il est assez facile,de faire une replace sur le texte complet de \n à \r\n, par contre il y a le risque que le logiciel dédié ne sache plus le lire.

Tu peux faire un test.

Et si tu ne veux pas t'embêter tu associes le .vid à Wordpad
Messages postés
10
Date d'inscription
dimanche 1 janvier 2017
Statut
Membre
Dernière intervention
10 janvier 2017

Du coup j'ai creusé sur l'enregistrement dans le fichier.

J'ai essayé avec ceci:
 RichTextBox1.SaveFile(TextBox1.Text, RichTextBoxStreamType.PlainText)


Au lieu de:
 System.IO.File.WriteAllText(TextBox1.Text, RichTextBox1.Text)


Et impeccable dans le bloc-note et compagnie. Il me fallait le paramètre "PlainText" pour reproduire à l'exacte dans le bloc-note.
Merci et bonne soirée à toi.

ps: je t’embête plus, tous marche impec :).