Caractere spéciaux dans listbox [Résolu]

collargol123 86 Messages postés jeudi 24 octobre 2013Date d'inscription 2 avril 2014 Dernière intervention - 28 mars 2014 à 01:05 - Dernière réponse : collargol123 86 Messages postés jeudi 24 octobre 2013Date d'inscription 2 avril 2014 Dernière intervention
- 2 avril 2014 à 23:14
Bonjour,

Il y a des fois vbnet ...
VB6 etait tellement plus simple !

Bon cette fois j'ai un probleme d'affichage dans ma listbox.
Les accents se transforment en caracteres bizarroides.

Si je charge un fichier avec accent dans ma listbox -->pas de probleme
Par contre si j'ai le malheur de renommer ce même fichier et qu'il a un accent --> le caractere bizarroide apparait

Pour renommer j'utilise le code ci-dessous :
My.Computer.FileSystem.RenameFile(Chemin & "\" & Listbox1.SelectedItem & ".txt",  
nouveauNom & ".txt")



Une idée ?
Merci à vous
Afficher la suite 

Votre réponse

7 réponses

Whismeril 12032 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 23 septembre 2018 Dernière intervention - 28 mars 2014 à 07:31
0
Merci
Correction de la coloration syntaxique. Pour plus de lisiblité pense à spécifier le langage avec la liste déroulante (flèche vers le bas) à côté de <>. Détails ici.
Commenter la réponse de Whismeril
Whismeril 12032 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 23 septembre 2018 Dernière intervention - 28 mars 2014 à 07:32
0
Merci
Bonjour, ou apparaît le caractère bizarre, dans la liste box ou dans le nom du fichier?
Commenter la réponse de Whismeril
collargol123 86 Messages postés jeudi 24 octobre 2013Date d'inscription 2 avril 2014 Dernière intervention - 28 mars 2014 à 11:07
0
Merci
bonjour,

dans la listbox et le fichier localisé dans le dossier
Commenter la réponse de collargol123
Whismeril 12032 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 23 septembre 2018 Dernière intervention - Modifié par Whismeril le 28/03/2014 à 11:18
0
Merci
OK, peux tu poster le code avec lequel tu charges la listbox, et celui de la mise à jour après renommage.

Penser aux balises de coloration syntaxique: bouton <>, préciser le langage :<code csharp>.
Quand la solution est trouvée, mettre la discussion Résolue.
Commenter la réponse de Whismeril
collargol123 86 Messages postés jeudi 24 octobre 2013Date d'inscription 2 avril 2014 Dernière intervention - 28 mars 2014 à 15:44
0
Merci
Au lancement de l'exe, chargement des noms des fichiers text (nom.txt) dans la listbox grace à une procédure :


private sub MiseAjour
Listbox1.Items.Clear()
Dim sFiles() As String
Dim nbfiles As Integer
Dim i As Integer
sFiles = Directory.GetFiles(Chemin)
nbfiles = Directory.GetFiles(Chemin).Length()
For i = 0 To nbfiles - 1
Dim pathfile As String = sFiles(i)
Dim NomFichier As String = pathfile.Remove(0, InStrRev(pathfile, "\", -1))
Dim x As Integer = NomFichier.Length - 4
Dim fichier As String = NomFichier.Remove(x, 4)
Listbox1.Items.Add(fichier)
Next

Ensuite je renomme le fichier text : je l'ouvre, je recupere des lignes, qui je m'en serrs pour renomme rle fichier :

Dim Chaine As String
Dim Ar(15) As String
Dim ligne As String
Dim i As Integer
Dim selection As String
selection = Listbox1.SelectedItem

Dim sr As New StreamReader(Chemin & "\" & selection & ".txt")

'Do Until sr.Peek = -1
i = 1
Do Until i = 15
ligne = sr.ReadLine()
Ar(i) = ligne
i = i + 1
Loop
sr.Close()
bo = UCase(Ar(2))
bi = StrConv(Ar(3), vbProperCase)
bu = Ar(7)

Je renomme ensuite le fichier

My.Computer.FileSystem.RenameFile(Chemin & "\" & Listbox1.SelectedItem & ".txt",
bo & " " & bi & " " & bu & ".txt")

Puis je relance la procédure MiseAjour
Commenter la réponse de collargol123
Whismeril 12032 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 23 septembre 2018 Dernière intervention - 30 mars 2014 à 16:12
0
Merci
Bonjour,

quand tu utilise les balises de codes, merci de bien seclectionner le langage, comme je te l'ai déjà demandé plus haut.

Ceci fonctionne chez moi
        My.Computer.FileSystem.RenameFile("C:\test.txt", "éèàôï.txt")

Si tu mets un point d'arrêt que valent bo, bi et bu?

Commenter la réponse de Whismeril
collargol123 86 Messages postés jeudi 24 octobre 2013Date d'inscription 2 avril 2014 Dernière intervention - 2 avril 2014 à 23:14
0
Merci
bonsoir,

j'ai trouvé la solution de cette manière.
Le problème vient de la lecture du fichier texte, qui reconnait pas certains caracteres. J'ai rajouté " System.Text.Encoding.Default" et le tour est joué !

Dim sr As New StreamReader(CheminHprim & "\" & selection & ".txt", System.Text.Encoding.Default)
    
Commenter la réponse de collargol123

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.