我是 C++ 新手,在将 UnicodeString 转换为字符串时遇到问题,所以现在寻找最简单的方法来从一种类型转换为另一种类型。
我想使用基本的windows函数,它需要带有UnicodeString的字符串,如何使代码工作?
UnicodeString Exec = "notepad";
WinExec(Exec.c_str(), 0);
使用的环境是c++ builder xe2
我是 C++ 新手,在将 UnicodeString 转换为字符串时遇到问题,所以现在寻找最简单的方法来从一种类型转换为另一种类型。
我想使用基本的windows函数,它需要带有UnicodeString的字符串,如何使代码工作?
UnicodeString Exec = "notepad";
WinExec(Exec.c_str(), 0);
使用的环境是c++ builder xe2
Astd::string
不能存储 unicode 数据。为此,您将需要一个 std::wstring 。
我以前从未听说过 UnicodeString,但在这里查看 API:
http://docwiki.embarcadero.com/Libraries/XE2/en/System.UnicodeString_Methods
它有一个名为 .c_str() 的函数,它返回一个 wchar_t*,然后您可以使用它来构造一个std::wstring
如果你真的需要一个 std::string,那么看看这个答案。
如果您正在 C++ 中寻找完整的 unicode 支持,请选择 ICU API。这是该网站,您可以在其中找到有关它的所有信息。http://site.icu-project.org/