请帮助我将 unicodestring 转换为字符串
这就是我得到 unicodestring 的方式
UnicodeString _str = OpenDialog1->FileName;
或者是否可以使用 ifstream 或类似的东西写入文件 unicode 字符串?
谢谢
请帮助我将 unicodestring 转换为字符串
这就是我得到 unicodestring 的方式
UnicodeString _str = OpenDialog1->FileName;
或者是否可以使用 ifstream 或类似的东西写入文件 unicode 字符串?
谢谢
根据您的需要,将 分配UnicodeString
给 anAnsiString
或 a UTF8String
,然后将其写入您的文件而不是原始文件UnicodeString
本身:
UnicodeString _str = OpenDialog1->FileName;
AnsiString _astr = _str;
或者:
UnicodeString _str = OpenDialog1->FileName;
UTF8String _ustr = _str;
要将AnsiString
/传递UTF8String
给 STL 函数,您必须:
1)使用c_str()
方法:
stream << _astr.c_str();
2)构造一个 temp std::string
:
stream << std::string(_astr.c_str(), _astr.Length());
3)在AnsiString
only的情况下,在你的项目中指定VCL_IOSTREAM
define来启用AnsiString的自带<<<
和>>
操作符:
stream << _astr;
将字符串转换为字节需要一些编码。有各种库可以执行此操作,因此这取决于您使用的框架。
作为替代方案,您可以使用wofstream
将wchar_t
字符写入流。
std::string converted;
us.toUTF8String(converted);
我们是 (ICU) UnicodeString