次のコードは、string
をwstring
に変換しています。使用しているステミング方法を呼び出す必要があります。しかし、私が語幹を格納しているmap
はstrings
でいっぱいです。私はSOのいくつかのソリューションを見渡し、wstring
からstring
までの変換の多くは、約12行のコードです。 string
からwstring
に素早く(できればインラインまたは類似の)変換する方法はありますか?C++で文字列をwstringに変換し、最小値コードで返します
string ANSIWord("documentation");
wchar_t* UnicodeTextBuffer = new wchar_t[ANSIWord.length()+1];
wmemset(UnicodeTextBuffer, 0, ANSIWord.length()+1);
mbstowcs(UnicodeTextBuffer, ANSIWord.c_str(), ANSIWord.length());
wWord = UnicodeTextBuffer;
そうでなければ、私はwstring
を使用するために、私のmap
や他の方法を変換になります。
EDIT:
エピファニー:私はそれによって所望の一つの行にそれを減少させる、独自の方法で全体の変換方法変換を配置することを決定しました。しかし、私はまだ好奇心から/将来の参照のために知りたいです。
本当にそうしたいと思うのではないでしょうか。あなたはエラーをチェックし、必要な出力長を*いくつかの方法で計算する必要があります。 –
[すべてのソフトウェア開発者が絶対に最低限必要な絶対値] Unicodeと文字セットについて肯定的に知っておく必要があります(言い訳はありません)](http://www.joelonsoftware.com/articles/Unicode.html) –