Texte Unicode UTF8

isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006
- 4 avril 2006 à 14:35
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
- 12 avril 2006 à 17:44
Bonjour
J'ai programmé un editeur de texte simple, comment faire pour enregistrer un fichier sous le type ANSI, UNICODE, Unicode big endian ou UTF-8
La même chose tel que NotePad

12 réponses

SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
4 avril 2006 à 14:53
Avec MultiByteToWideChar et WideCharToMultiByte comme ceci.

char Ansi[256];
WCHAR *Unicode = TEXT("Bonjour");
MultiByteToWideChar(CP_ACP, 0, Ansi, -1, Unicode , wcslen(Unicode));

WCHAR Uncode[256];
char *Ansi = "Bonjour";
WideCharToMultiByte(CP_ACP, 0, Uncode, -1, Ansi , strlen(Ansi), NULL, NULL);

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

4 avril 2006 à 15:07
Je veux faire exactement comme NotePad, j'ai ajouté un contrôle a la boite de dialoge CFileDialog (enregistrer / enregistrer sous), ce control est un ListBox qui a pour valeurs : ANSI, UNICODE, Unicode big endian et UTF-8 (codage)
Lorsque l'utilisateur confirme l'enregistrement d'un fichier .txt il faut prendre en charge le codage
0
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
4 avril 2006 à 22:41
Le texte que l'utilisateur à écris est bien stocké en mémoire avant d'être sauvegarder sur le disque. Donc utilise le buffer de ton texte original et convertie le vers un buffer unicode. Ensuite enregistre le buffer unicode sur le disque.

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

6 avril 2006 à 14:00
je n'arrive pas toujours a le faire...
ça marche pas.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
6 avril 2006 à 14:30
Quesqui ne fonctionne pas? C'est la convertion?

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

6 avril 2006 à 20:48
oui
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

6 avril 2006 à 20:49
0
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
6 avril 2006 à 22:22
Peut tu poster la partie de ton code qui est censer codé le texte en unicode?

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

6 avril 2006 à 23:35
oui c vrais merci
0
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
7 avril 2006 à 00:02
Quoi quesqui est vrai? Post la partie du code qui convertie sur le forum (ici plus précisément)

___________________________________________
Les plus grands esprits trouvent toujours une solution
0
isirnet
Messages postés
40
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
24 mai 2006

12 avril 2006 à 15:46
voila un exemple du code, pour co,vertir l'Unicode en ANSI

code()
{
int i;
WCHAR Uncode[256];
char *Ansi = "Bonjour";
i=WideCharToMultiByte(CP_ACP, 0, Uncode, -1, Ansi , strlen(Ansi), NULL, NULL);
return Uncode;
}

mais toujours ça march pas
0
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
12 avril 2006 à 17:44
à oui? Ya rien du tout dans Uncode? Tu le teste comment?

___________________________________________
Les plus grands esprits trouvent toujours une solution
0