Bonjour,
Je dois travailler sur des fichiers texte issus de vieilles applis DOS où toutes les voyelles avec accents sont remplacés par des caractères de "substitution". Après lecture de ces fichiers par un streamreader, les lignes qui les constituent sont classée dans des string sur lesquelles mon appli travaille.
Lorsque je regarde avec un espion ces string, tous les caractères avec accent sont remplacés par �.
Quand je travaille sur les mots contenus dans ces string, les caractères � s'ils sont dans un mot (du type "gère" qui est traduit en "gŠre" dans le fichier texte et affiché "g�re" par l'espion) ne posent pas de problème.
Par contre quand je travaille sur un caractère isolé � (du type "à" qui est traduit en "…" dans le fichier texte et affiché "�" par l'espion), le code suivant ne marche pas.
(Le but de ce code est de créer un arraylist avec les mots/caractères uniques séparés par des espaces en conservant les espaces comme éléments de Tableau).
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 Private Function SeparerTexte(ByVal Texte As String) As ArrayList ' Sépare le texte en un Arraylist d'éléments simples à comparer Dim Tableau As New ArrayList While Texte.Length > 0 ' Décomposition du texte, le caractère " " sert de séparateur (on cherche aussi à élimiber "§" qui sert d'indicateur de retour à la ligne) While Texte.StartsWith(" ") Tableau.Add(" ") Texte = Texte.Substring(1) End While If Texte.Length > 0 Then Tableau.Add("") While Texte.Length > 0 AndAlso Not Texte.StartsWith(" ") If Texte.StartsWith("§") Then Tableau.Add("") Else Tableau(Tableau.Count - 1) &= Texte.Substring(0, 1) End If Texte = Texte.Substring(1) End While End If End While Return Tableau End Function
Est-ce que quelqu'un à déjà eu ce genre de problème?
Partager