Visual Studio - UTF8 [Résolu]

Signaler
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015
-
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021
-
Bonjour,

Je lis un fichier texte qui contient le prénom Chloé



Code :

Sélectionner tout - Visualiser dans une fenêtre à part

123456789101112 FileOpen(1, "C:\etilab\import\GDTACHI.GDT", OpenMode.Input)
        Compteur = -1
        While Not EOF(1)
            Compteur = Compteur + 1
            Input(1, s)
            TableauPatient(Compteur) = s
            If ChaineTravailDebut = "0173102" Then
                prenom = ChaineTravailFin
                MsgBox(prenom)
            End If
        End While
        FileClose(1) Dans la message box le prénom s'affiche Chloé


Je pense que je dois utiliser une conversion en UTF8 mais je ne sais pas comment faire !

Pouvez-vous m'aider ?

Merci à tous et a bientôt

Soleil

4 réponses

Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
Bonjour

1 Ce n'est pas du vb.net
2 Ton fichier text a été sauvegardé en code utf -8
si tu ouvres ton fichier avec notpad vois tu
Chloé ou Chloé ?
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

Merci de ta réponse
Dans le fichier avec Bloc-notes je vois Chloé
Avec notpat++, je vois Chloé

Merci de ton aide
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

J'ai fait un enregistrer-sous du fichier avec le bloc-notes avec encodage UTF-8. Dans la message box le prénom s'affiche Chloé.

        ' Lecture fichier GDTEtilab.GDT et remplissage du tableau

Dim SR As StreamReader = File.OpenText("C:\etilab\import\GDTEtilab.GDT")
        Dim Ligne As String
        Do Until SR.Peek = -1
            Ligne = SR.ReadLine()
            'MsgBox(Ligne)
            ChaineTravailDebut = Mid(Ligne, 4, 4)
            ChaineTravailFin = Mid(Ligne, 8, 100)
            If ChaineTravailDebut = "3102" Then
                prenom = ChaineTravailFin
                MsgBox(prenom)
            End If
        Loop
        SR.Close()


Comment en visual studio, je peux lire mon fichier GDTEtilab.GDT et le transformer en UTF-8

Merci de votre aide

A bientôt
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021
155
La ligne
FileOpen(1, "C:\etilab\import\GDTACHI.GDT", OpenMode.Input)
Me fait quand même penser à du .NET, mais avec l'import Microsoft.VisualBasic.
Donc :
En VB.NET pensez à activer "Option Explicit" et "Option Strict" (propriétés du projet)
et retirer l'import automatique de l'espace de nom "Microsoft.VisualBasic" (onglet références du projet).
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

J'ai activé "Option Explicit" à ON et "Option Strict" à ON (propriétés du projet).
Mais je ne trouve pas dans l'onglet références du projet l'import automatique.

Merci

A bientôt
et si tu ajoute cet argument a l'ouverture de ton fichier
System.Text.Encoding.Default
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

Merci mais comment !!!

' Lecture fichier GDTEtilab.GDT et remplissage du tableau

Dim SR As StreamReader = File.OpenText("C:\etilab\import\GDTEtilab.GDT")
        Dim Ligne As String



Merci

Bonne soirée

EDIT: Ajout de la coloration syntaxique.
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021
155 >
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Merci aussi de lire mes conseils, ils te permettront de faire un code nettement plus propre et maintenable.
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
tu peux lire tout le fichier d'un bloc

'on déclare une liste de string
 Private lines As New List(Of String)

private sub ReadFile
dim ChaineTravailDebut , ChaineTravailFin,prenom as string
'on lit le fichier
lines = IO.File.ReadAllLines("C:\etilab\import\GDTEtilab.GDT", System.Text.Encoding.UTF8).ToList
'on traite lines
for each item in lines
ChaineTravailDebut = item.substring( 3, 4)
ChaineTravailFin = item.substring( 7, 100)
If ChaineTravailDebut = "3102" Then
prenom = ChaineTravailFin
MsgBox.show(prenom)
End If
next

end sub
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

Merci pour la réponse. J'ai modifié mon programme et introduit le code que tu m'as donné et tout fonctionne correctement. Le prénom s'affiche Chloé apparaît.

Merci beaucoup
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015

Bonjour,

Merci pour la réponse. J'ai modifié mon programme et introduit le code que tu m'as donné et tout fonctionne correctement. Le prénom s'affiche Chloé apparaît.

Merci beaucoup

Je dois mettre ce programme sur un Macintosh. A-t-on une possibilité avec visual studio de générer et compiler pour ce type de PC ?

Merci

A bientôt
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021
155
Je pense qu'avec Mono sur le poste de destination, ton programme pourrait marcher, si tu évites l'usage de Microsoft.VisualBasic et que tu actives Option Strict et Option Explicit, le résultat serait plus certain.
Messages postés
75
Date d'inscription
samedi 7 juillet 2007
Statut
Membre
Dernière intervention
29 mars 2015
>
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021

Bonjour,

J'active Option Strict et Option Explicit, c'est ok.
Comment je fais avec Mono ?

Merci

A bientôt
Messages postés
14796
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
1 juin 2021
155
Mono est un programme à installer, à toi de te senseigner, sour Linux c'est "sudo apt-get install mono-complete"