Bonjour à toutes et à tous,

je traite des fichiers d'origine DOS, dans lesquels, bien sur, les minuscules accentuées ne sont pas codées comme dans les application Windows !!!
J'ai bien la solution suivante, faire une boucle de replace sur tous les caractères differents entre DOs et Windows. Etant moyennement fier de moi, je cherche une autre solution. Merci pour les idées que vous avez sur la question.
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
31
Public Class Form1
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        FileOpen(1, "c:\ficdos.txt", OpenMode.Input)
        Dim zw = LineInput(1)
        trscode(zw)
        MsgBox(zw)
        FileClose(1)
    End Sub
 
    Private Sub trscode(ByRef z As String)
        Dim zdos(8) As Char
        zdos(0) = Chr(&H82) ' Caractère é en dos
        zdos(1) = Chr(&H8A) ' caractère è en dos
        zdos(2) = Chr(&H87) ' caractère ç en dos
        zdos(3) = Chr(&H85) ' caractère à en dos
        zdos(4) = Chr(&H88) ' caractère ê en dos
        zdos(5) = Chr(&H93) ' caractère ô en dos
        zdos(6) = Chr(&H97) ' caractère ù en dos
        zdos(7) = Chr(&H89) ' caractère ë en dos
        zdos(8) = Chr(&H8B) ' caractère ï en dos
 
 
        Dim zwind() As String = {"é", "è", "ç", "à", "ê", "ô", "ù", "ë", "ï"}
        Dim i = 0
        For i = 0 To zdos.Length - 1
            Dim zi As String = zdos(i)
            z = z.Replace(zi, zwind(i))
        Next
    End Sub
End Class