2

ウィンドウで次のコードを実行しています:-

#include <codecvt>
void main()
{
    wifstream myfile (argv[1],ios_base::in|ios_base::binary);   
    myfile.imbue(std::locale(myfile.getloc(),new std::codecvt_utf16<wchar_t, 0xffff, consume_header>));
}

Linux でコードをコンパイルしたいのですが、"codecvt" ヘッダー ファイルはサポートされておらず、codecvt_utf16 と consumer_header のエラーが発生します。ICU または iconv ヘッダー ファイルの使用を提案する人はほとんどいません。しかし、それらの使用方法がわかりません。

Linux で実行できるコードを置き換えるのを手伝ってください ありがとうございます Vikas

4

2 に答える 2

0

Poco::UnicodeConvert ユーティリティは、一般的なコード変換を処理でき、移植可能です。

例えば:

string toUTF8(const Poco::UTF16String & utf16String) { string result;

Poco::UnicodeConverter::convert(utf16String, result);

return result;

}

于 2016-10-28T06:12:33.663 に答える