IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[VB.NET] UTF8Encoding et TextBox


Sujet :

ASP.NET

  1. #1
    Membre très actif
    Avatar de Cyrilange
    Profil pro
    Inscrit en
    Février 2004
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 268
    Par défaut [VB.NET] UTF8Encoding et TextBox
    J'aimerais lire un fichier texte et l'afficher dans un TextBox mais les accents et autres caractères spéciaux ne s'affichent pas.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            Dim fs As FileStream
            Dim path As String = "C:\MonChemin\journal.txt"
            fs = File.OpenRead(path)
            Dim b(1024) As Byte
            Dim temp As UTF8Encoding = New UTF8Encoding(True)
            Dim text As String
     
            Do While fs.Read(b, 0, b.Length) > 0
                text += temp.GetString(b)
            Loop
            fs.Close()
     
            txt_journal.Text = text
    Une idée ? Merci

  2. #2
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut Re: [VB.NET] UTF8Encoding and TextBox
    Citation Envoyé par Cyrilange
    J'aimerais lire un fichier texte et l'afficher dans un TextBox mais les accents et autres caractères spéciaux ne s'affichent pas.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            Dim fs As FileStream
            Dim path As String = "C:\MonChemin\journal.txt"
            fs = File.OpenRead(path)
            Dim b(1024) As Byte
            Dim temp As UTF8Encoding = New UTF8Encoding(True)
            Dim text As String
     
            Do While fs.Read(b, 0, b.Length) > 0
                text += temp.GetString(b)
            Loop
            fs.Close()
     
            txt_journal.Text = text
    Une idée ? Merci
    je crois que les textbox ont un peu de mal avec les caractères ansi étendus
    est-ce çà te fait pareil avec un richtextbox :

  3. #3
    Membre très actif
    Avatar de Cyrilange
    Profil pro
    Inscrit en
    Février 2004
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 268
    Par défaut
    je crois que les textbox ont un peu de mal avec les caractères ansi étendus
    est-ce çà te fait pareil avec un richtextbox
    Un RichTextBox dans un WebForm ??? Euh... j'ai pas ça dans la boîte à outils moi

  4. #4
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par Cyrilange
    je crois que les textbox ont un peu de mal avec les caractères ansi étendus
    est-ce çà te fait pareil avec un richtextbox
    Un RichTextBox dans un WebForm ??? Euh... j'ai pas ça dans la boîte à outils moi
    pardon milles pardons quel idiot je fait
    bien sûr j'étais parti sur du windowsform quel béta
    Bon alors autre proposition juste pour voir
    si tu utilisait un streamreader pour récupérer le texte de ton fichier car il existe un constructeur avec une surcharge System.Text.Encoding
    le seul plème c'est que dans ce cas il faut etre sûr que l'encodage de lecture soit le même qque l'encodage d'ecriture du fichier
    Si çà marche pas alors faudra commencer à incriminer le textbox(ma première intuition) et donc là : : : .. ben on verra bien
    allez bonne prog et excuses moi encore

  5. #5
    Membre très actif
    Avatar de Cyrilange
    Profil pro
    Inscrit en
    Février 2004
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 268
    Par défaut
    Merci Neguib !!!

    La solution est donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Dim sr As StreamReader = New StreamReader("C:\MonChemin\journal.txt", System.Text.Encoding.Default)
    Dim line As String
    Dim text As String
     
         Do
               line = sr.ReadLine()
               text += line & vbCrLf
         Loop Until line Is Nothing
     
    sr.Close()
    txt_journal.Text = text
    En faite, System.Text.Encoding.Default donne les codes ANSII du system et ça marche

    Encore merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] Pb rafraichissement TextBox
    Par thebeb dans le forum ASP.NET
    Réponses: 5
    Dernier message: 01/02/2007, 14h43
  2. [VB.NET] curseur de textbox
    Par AP dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/04/2006, 20h43
  3. [VB.NET] Créer une textbox from scratch
    Par AP dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/04/2006, 10h09
  4. [vb.net] définir un textbox dynamiquement
    Par arnolem dans le forum Windows Forms
    Réponses: 13
    Dernier message: 05/12/2005, 15h51
  5. [VB.NET] Sauvegarde dans TextBox des logons utilisés
    Par stephane93fr dans le forum ASP.NET
    Réponses: 3
    Dernier message: 27/10/2005, 11h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo