- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
请帮我将 unicodestring 转换为字符串
这就是我获取 unicodestring 的方式
UnicodeString _str = OpenDialog1->FileName;
或者是否可以使用 ifstream 或类似的东西写入文件 unicode 字符串?
谢谢
最佳答案
根据您的需要,分配 UnicodeString
到AnsiString
或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) 构造一个临时 std::string
:
stream << std::string(_astr.c_str(), _astr.Length());
3) 在 AnsiString
的情况下仅指定VCL_IOSTREAM
在您的项目中定义以启用 AnsiString 自己的 <<<
和>>
运算符:
stream << _astr;
关于string - C++ 将 UnicodeString 转换为 String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11291397/
从 ICU 4.2.1 开始,将 UnicodeString 设置为 C 字符串的唯一直接方法是使用数据构造一个新的 UnicodeString,然后将所需的字符串设置为新字符串,从而分配、复制、并释
我正在尝试编译我已声明为类成员的项目: icu::UnicodeString label; icu::UnicodeString tags; icu::UnicodeString domain; ic
我有一个 STL map 容器,里面装满了成对的 vcl UnicodeString 对象。我正在尝试使用下面引用的代码将其转储到文件中,但我得到的不是我的字符串,而是一个充满十六进制地址的文件。 /
如何去除重复值 std::vector > myVect; 是否有任何内置函数或者我需要为此编写自定义代码 最佳答案 假设 (a) std::set 不是您想要的 [即您希望在您的 std::vec
我正在运行 ubuntu,我可以构建 ICU 我已经包括: #include using namespace icu; 这是我的 ICU 构建方法: CPPFLAGS="-DU_USING_ICU_
无法编译 php国际 (php - 5.5.9,ubuntu - 14.04,icu - 67) 当我尝试 pecl 安装国际 ,出现以下错误 In file included from /tmp/p
在 Delphi 2009 及更高版本中,字符串类型隐式等于 UnicodeString 类型。我现在的纪律是为我最近的基本单位使用明确的 UnicodeString 类型,以消除混淆。是否有一个编译
我正在将一个旧项目从 C++ Builder 2009 移植到 XE5。在旧项目中,Unicode 字符串的编译器选项设置为“_TCHAR maps to: char”。这在旧项目中运行良好。 移植时
我正在测试从 Delphi 5 到 XE 的迁移。由于不熟悉 UnicodeString,在提出问题之前我想先介绍一下它的背景。 Delphi XE 面向字符串的函数:Copy、Delete 和 In
我有这段代码可以根据列数据为网格行着色(网格来自 devexpress) var AColumn: TcxCustomGridTableItem; gs: variant; begin AColu
如何检查 UnicodeString 的字符? 我试过: UnicodeString us = "stuff"; if ( (us[2] == L"@") ) 但我得到:E2034 无法将 'wcha
我有一个包含四个单词行的列表框的表单。 当我单击一行时,应该会在四个不同的文本框中看到这些词。 到目前为止,我已经一切正常,但我在字符转换方面遇到了问题。 列表框中的字符串是 UnicodeStrin
在过去,我有一个函数可以转换 WideString到 AnsiString指定代码页的: function WideStringToString(const Source: WideString; C
我发现自己需要一种方法来将字符串更改为可安全用于 ASCII 和 UTF16-LE(如某些 Windows 注册表字符串中所见)的小写字母,并遇到了这个问题:How to convert std::s
我正在尝试使用 boost 序列化库序列化 icu::UnicodeString 但遇到了问题。 icu::UnicodeString 没有序列化所需的序列化函数。所以我尝试创建它,但我不确定如何制作
我的环境是 Windows 7 专业版(32 位)上的 RADStudio XE4 Update1。 我发现在 C++ Builder 中有一个 System::UnicodeString::Form
假设我们有一个来自其他地方的 char 字符串,稍后将其用作接受宽字符串的函数的输入参数。 在变体 1 中,从 char 字符串创建 UnicodeString,并在第二步中用作指向 LoadLibr
请帮我将 unicodestring 转换为字符串 这就是我获取 unicodestring 的方式 UnicodeString _str = OpenDialog1->FileName; 或者是否可
是否可以通过 printf 将 char* 参数打印到 UnicodeString 对象中?成员函数? 以下代码给出了错误的结果(损坏的字符串): UnicodeString s; s.printf(
据我了解,Boost.Filesystem 使用 native 语言环境编码,我使用 ICU 的 UnicodeString 而不是 std::string,因为它适用于 Unicode。但是,我想将
我是一名优秀的程序员,十分优秀!