C++でASCIIstd:: stringをUTF8(Unicode)std :: stringに変換する方法は?
5562 次
3 に答える
6
std::string ASCIIToUTF8(std::string str) {
return str;
}
すべてのASCII文字はUTF8で同じ表現を持っているため、変換するものはありません。もちろん、入力文字列が拡張(8ビット)ASCII文字セットを使用している場合、答えはより複雑になります。
于 2010-02-27T15:17:56.490 に答える
2
ASCIIは7ビットエンコーディングであり、ASCIIで表現できる文字のサブセットのUTF-8エンコーディングに同じようにマッピングされます。
要するに、何もすることはありません。ASCII文字列はすでに有効なUTF-8です。
于 2010-02-27T15:18:44.593 に答える
0
ASCIIとは、CP1252またはその他の8ビット文字セットを意味すると思います(ASCIIは7ビットのみで、UTF-8と直接互換性があり、変換は必要ありません)。標準のC++では実行できません。これを行うには、たとえばGlibmm、Qt、iconv、またはWINAPIが必要です。
于 2010-02-27T15:16:25.783 に答える