Lecture fichiers dbf

Signaler
Messages postés
3
Date d'inscription
lundi 6 janvier 2003
Statut
Membre
Dernière intervention
14 octobre 2004
-
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
-
Lors de la lecture de fichiers dbf, (dbase 4) les caractères accentués ne s'affichent pas correctement dans mon formulaire cpp.

2 réponses

Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
12
Salut,
Dbase utilise le jeux de caractères DOS. Pour les lettres accentuées Windows utilise des codes différents. Il existe une fonction qui fait la conversion des caractères ASCII DOS vers ANSI Windows: OemToChar(). Une autre fait l'inverse: CharToOem().
Syntaxe : OemToChar(source,destination)
source=pointeur sur une chaine se terminant par 0
destination=pointeur vers une zone qui reçoit le résultat.
char chaine[20];
OemToChar(chaine,chaine);//transforme la chaine en ANSI
CharToOem(chaine,chaine);//transforme la chaine en ASCII DOS

Pour plus de détails tu tapes "oemtochar msdn" dans google qui te donnera la page de MSDN correspondante.
A+
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
12
J'avais oublié de préciser que la fonction OemToChar() convertit aussi en UNICODE. Dans ce cas:
char chaine1[20];//chaine source
WCHAR chaine2[20];//chaine destination
OemToChar(chaine1,chaine2);

J'espère que c'est ce que tu cherches.
A+