Bonjour à tous,
J'ai un problème assez perturbant et peu commun... Je cherche simplement à afficher de l'unicode à partir de wstring, en utilisant l'API Windows.
Le script .cpp suivant est encodé en UTF8.
Pas d'erreur de compilation. J'utilise GCC 5.1. L'exe s'appelle Test.exe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <windows.h> #include <iostream> int main(){ SetConsoleCP(CP_UTF8); SetConsoleOutputCP(CP_UTF8); std::wcout << L"é" << std::endl; // le résultat serai avec wprintf(L"é"); }
Je sais que pour visualiser les accents en console, il faut utiliser une police appropriée, comme Lucida Console
Lorsque je lance le programme en console, il y a deux scenarii de figure en fonction des réglages de la police :
-Si je règle la police après mon exe, tout en restant dans la même console, alors je vois les accents.
Ça me paraît logique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5>rem Ici, je suis en police raster >Test.exe ù >rem Ici, je règle la police de la console en Lucida Console >rem mon ù précédent s'est transformé en é
-Maintenant, si je règle la police sur Lucida Console avant de lancer mon exe, je ne vois pas les accents !
Des idées ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >rem Ici, je règle la police de la console en Lucida Console >Test.exe [ caractère rectangle blanc ]
Jean
Partager