Accent

Messages postés
37
Date d'inscription
jeudi 4 février 2016
Statut
Membre
Dernière intervention
1 décembre 2018
- - Dernière réponse :  geeegeee124 - 24 oct. 2016 à 13:31
Bonjours.
Je rencontre un petit problème. Je lit un fichier *txt et j'implante le tout dans un tableau. Le tout fonctionne. Cela dit, les é, à , Û et etc... son inscrit avec un caractère bizarre dans un losange.

If System.IO.File.Exists(Application.StartupPath & "\System\Data\horaire.nasd") Then
Dim lesLignes As String() = System.IO.File.ReadAllLines(Application.StartupPath & "\System\Data\horaire.nasd")
For Ligne = 0 To lesLignes.Count() - 1 Step 10
Temp1 = lesLignes(Ligne + 3)
Temp2 = lesLignes(Ligne + 4)
Temp3 = lesLignes(Ligne + 5)
Temp4 = lesLignes(Ligne + 6)
Temp5 = lesLignes(Ligne + 7)
Temp6 = lesLignes(Ligne + 8)
HoraireTableau.Rows.Add(Temp1, Temp2, Temp3, Temp4, Temp5, Temp6)
Next
End If


Comment faire en sorte que les accents sois pris en charge ???
Merci
Afficher la suite 

3 réponses

Messages postés
37
Date d'inscription
jeudi 4 février 2016
Statut
Membre
Dernière intervention
1 décembre 2018
0
Merci
Si je fais un Test et que je met cette ligne a la fin de mon code:
HoraireTableau.Rows.Add("Alain Carrié", "Kevin Harvick", "4", "4", "12", "20")


Le é de Carrié est visible. Mes Valeur Temp1 Temp2 sont en String dans un module.
Commenter la réponse de MaitreTeTe
Messages postés
37
Date d'inscription
jeudi 4 février 2016
Statut
Membre
Dernière intervention
1 décembre 2018
0
Merci
Bon et bien j'ai fini par trouver pourquoi sa fait ça.

Je dois utiliser la ligne de code
Dim lesLignes As String() = System.IO.File.ReadAllLines(Application.StartupPath & "\System\Data\horaire.nasd", System.Text.Encoding.Default

C'est étrange car les autre fichier j'en ai pas besoin. De plus, dans les choix je n'est pas le Type d'encodage ANSI.

Le problème est que ci les autre pc on pas ce type d'encodage par defaut, sa ne fonctionnera surment plus :O Si vous avez une alternative ?
Commenter la réponse de MaitreTeTe
0
Merci
Bonjour,

Quand tu crées le StreamReader, essaie de préciser Encoding.Default (qui correspond à ISO-8859-1, du moins sur un OS européen) comme encodage :



Code : Sélectionner tout - Visualiser dans une fenêtre à part
fr = New System.IO.StreamReader(CheminConfig & "\" & "repart.ini", Encoding.Default)
Parce que par défault il utilise UTF-8, et non pas Default (bah oui c'est bête ), et si en fait ton fichier est en ISO-8859-1 certains caractères seront mal interprétés


Il y a différentes façons de représenter du texte en binaire... ASCII, ISO-8859-*, UTF-8, cp1252 (utilisé par la console) etc
http://fr.wikipedia.org/wiki/Codage_de_caract%C3%A8res

de: http://www.developpez.net/forums/d1143927/dotnet/langages/vb-net/accents-vb-net/:
Commenter la réponse de geeegeee124