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

VB.NET Discussion :

Encoder un texte & modifier le contenu d'un .txt


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Par défaut Encoder un texte & modifier le contenu d'un .txt
    Bonjour,
    Lorsque les fichiers textes (.txt) sont lus, les caractères avec des accents sont remplacés par des petits carrés. Peut-on remédier à cela?
    On m'a dit qu'il fallait modifier l'encodage.

    Voici tout 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Public Class Form1
        Dim destination As String
        Dim selection As String
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
        End Sub
     
        Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
            selection = ListBox1.SelectedItem
            If selection = ("Collier d'ours") Then
                destination = (Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\objet\collierdours.txt")
            End If
            If selection = ("Cape du mage Tanzou") Then
                destination = (Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\objet\cape du mage tanzou.txt")
            End If
            Dim stream As New System.IO.StreamReader(destination)
            Dim description = stream.ReadLine
            Label1.Text = description
            Dim effet = stream.ReadLine
            Label2.Text = effet
            Dim prix = stream.ReadLine
            Label3.Text = prix
            stream.Close()
     
        End Sub
     
        Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
     
        End Sub
    End Class
    Mais où je dois mettre l'encodage?

    Encore une dernière question pour terminer:
    Pour ajouter une valeur à un fichier .txt (c'est à dire: si le contenu est 5 et je veux ajouter 5 pour que ca fasse 10), j'utilise ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim [] As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                Dim () = [].ReadToEnd
                Label?.Text = ()
                [].Close()
                Kill(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                Dim [] As New System.IO.StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                [].WriteLine(Label[].Text + [])
                [].Close()
    Mais n'y a t'il pas un moyen plus simple de le faire?

  2. #2
    Membre confirmé
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Par défaut
    J'ai trouvé la solution à l'encodage il fallait mettre à mon stream:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim stream As New System.IO.StreamReader(destination, _
                System.Text.Encoding.Default, False, 512)
    Par contre je n'ai pas trouvé de code plus simple pour ma deuxième question (voir premier message du topic). Auriez-vous un code plus simple que le mien?

  3. #3
    Membre émérite

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Par défaut
    Salut

    Encore une dernière question pour terminer:
    Pour ajouter une valeur à un fichier .txt (c'est à dire: si le contenu est 5 et je veux ajouter 5 pour que ca fasse 10), j'utilise ce code:
    peux tu expliquer simplement

    si le contenu est 5 5 mots ? 5 caractères ?

  4. #4
    Membre confirmé
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Par défaut
    Le contenu est 5 le chiffre.

  5. #5
    Membre émérite Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                Dim [] As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                Dim () = [].ReadToEnd
                Label?.Text = ()
                [].Close()
                Kill(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                Dim [] As New System.IO.StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\[].txt")
                [].WriteLine(Label[].Text + [])
                [].Close()
    ça marche tel quel ?

    Mais n'y a t'il pas un moyen plus simple de le faire?
    Je pense que c'est la procédure habituelle..
    -> Lecture du fichier
    -> Analyse du contenu
    -> Modification
    -> Ecriture du fichier

  6. #6
    Membre confirmé
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Par défaut
    Ne peut-on pas tout simplement faire un streamwriter qui va additionner le contenu avec une valeur?

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/08/2014, 13h18
  2. Réponses: 10
    Dernier message: 29/07/2014, 15h44
  3. Modifier le contenu d'un fichier texte
    Par étudiant49 dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 17/11/2011, 12h57
  4. Comment modifier le contenu d'un noeud de type texte avec python?
    Par Tinkite82 dans le forum Général Python
    Réponses: 14
    Dernier message: 01/06/2010, 11h58
  5. modifier le contenu d'une zone de texte automatique
    Par sunwind dans le forum VBA Access
    Réponses: 1
    Dernier message: 05/02/2008, 15h14

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