Caractère DOS vers ANSI

Résolu
Signaler
Messages postés
74
Date d'inscription
mardi 3 février 2004
Statut
Membre
Dernière intervention
5 février 2010
-
Messages postés
133
Date d'inscription
mardi 24 décembre 2002
Statut
Membre
Dernière intervention
8 juin 2012
-
Salut à tous,

Comment puis-je faire pour "transformer" un caractère DOS en ANSI?

Je m'explique mieux : lorsqu'on tente d'ouvrir un fichier écrit avec un
programme DOS dans le bloc note ou meme dans sa propre application, les
accents et autre caractères semi-graphiques sont transformé en
caractère bizarre (ex : l'accent tapé sous DOS (é) est transformé en
virgule lorsqu'on l'importe en ANSI (,))

Il doit certainement existé une API ou autre pour remédier à ca sans
être obligé d'examiner tous les caractères et de faire un remplacement
de caractère...

Merci d'avance pour votre aide

La programation c'est au moins autant prise de tête que ... je ne vois pas rien ne l'égale...

1 réponse

Messages postés
133
Date d'inscription
mardi 24 décembre 2002
Statut
Membre
Dernière intervention
8 juin 2012
4
Bonjour.

Le fichier C:\Test.txt comportant décembre mais qui s'affiche dans le bloc-note d,cembre :

Private Declare Function OemToChar& _
Lib "user32" Alias "OemToCharA" _
(ByVal lpszSrc$, ByVal lpszDst$)


Sub Convert()
Dim n%, Str$
n = FreeFile
Open "C:\Test.txt" For Input As #n
Str = Input(LOF(n), #n)
Close #n
MsgBox Str, vbCritical, "Avant"
OemToChar Str, Str
MsgBox Str, vbInformation, "Aprés"
End Sub

ctac
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci