Bonjour à tous :o
Une petite question :
Existe t-il une fonction chez boost ou dans la stl qui permet de convertir un wstring en string ? et l'inverse ?
Bonjour à tous :o
Une petite question :
Existe t-il une fonction chez boost ou dans la stl qui permet de convertir un wstring en string ? et l'inverse ?
Plus y'a d'Gruyère, plus y'a d'trous !
Plus y'a d'trous, moins y'a d'Gruyère...
Donc, Plus y'a d'Gruyère, moins y'a d'Gruyère !!!
bonjour, dans la STL il y a
::mbstowcs qui fait de string (en fait const char*) en wstring et
::wcstombs qui fait de wcha_t* en string
"vaste programme"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 . . .
Cool ça marche nikel...
si vous connaissez une solution encore + simple, je suis preneur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 wstring wtest = L"blablabla"; string test; test.resize(wtest.size()); wcstombs(&test[0], &wtest[0], wtest.size()); cout << test << endl;
Merci bcp BainE
Plus y'a d'Gruyère, plus y'a d'trous !
Plus y'a d'trous, moins y'a d'Gruyère...
Donc, Plus y'a d'Gruyère, moins y'a d'Gruyère !!!
nan, j'ai pas mal cherché j'ai rien trouvé d'autre mais si quelqu'un en sait plus long ca m'interesse
"vaste programme"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 . . .
Il n'y a rien sur les string directement. Il faut utiliser le facet ctype de ton locale et utiliser les membres narrow et widen. J'ai pas le temps de donner un exemple. Peut-etre ce soir. Sinon, et si personne ne le fait, envoie moi un email pour me le rappeler au cas ou j'oublie.Envoyé par superspag
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.
Oui, je viens de tomber dessus avec la MSDN...
la fonction ctype::do_narrow m'a tout l'air d'etre ce qu'il me faut mais je n'ai pas encore reussi à l'utiliser
Bah... je doit etre fatigué, je verai ça demain
Merci à tous, je vous tiens au courant...
Plus y'a d'Gruyère, plus y'a d'trous !
Plus y'a d'trous, moins y'a d'Gruyère...
Donc, Plus y'a d'Gruyère, moins y'a d'Gruyère !!!
Il y a un problème ici.Envoyé par superspag
Officiellement, il n'y a pas de garantie de contiguité dans les caractères qui constituent une chaine -- contrairement aux vecteurs.
Soit, tu ne peux pas modifier la chaine via un char* extrait depuis &s[0]. Dans les faits, je ne crois pas avoir croisé d'implémentation de std::string dont les éléments ne soient pas contigus.
Et j'imagine que la std::string est censée être encodée dans la locale globale et que la std::wtring en unicode UCS-2 (ou DBCS ? je nesais jamais)
Bref, normalement, il faut effectivement voir du côté des code convertion facets pour pouvoir être plus souple sur l'utilisation des locales. Quant à Boost, il y a planqué, dans boost.serialize je crois, un code cvt facet pour gérer l'UTF-8. Il y en a un autre dans Adam ou Eve de chez adobe (opensource).
Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...
Merci pour toutes ces aides, je pense que je vais m'en sortir maintenant :o
Plus y'a d'Gruyère, plus y'a d'trous !
Plus y'a d'trous, moins y'a d'Gruyère...
Donc, Plus y'a d'Gruyère, moins y'a d'Gruyère !!!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager