免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3537 | 回复: 0
打印 上一主题 下一主题

[C++] 求助icu库的UnicodeString [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-24 10:29 |只看该作者 |倒序浏览
  1. #include <iostream>
  2. #include <locale>

  3. #include <unicode/regex.h>
  4. using namespace std;
  5. using namespace icu;
  6. int main() {

  7.         const int MAX_SIZE = 255;

  8.         locale loc("");
  9.         wcout.imbue(loc);
  10.        
  11.         puts("输入文字");
  12.         fgets(str, MAX_SIZE, stdin);
  13.         str[strlen(str) - 1] = '\0';
  14.         UnicodeString input(str, "gb2312");

  15.         wcout<<"input:"<<input.getTerminatedBuffer()<<'\n';
  16.         return 0;
  17. }
复制代码
请问
使用icu库。构筑的UnicodeString构造,里面存的输入的文字,是gb2312编码?还是unicode编码?
下面是相关文档的。
我对UnicodeString不理解,他和char[],w_char[],UChar [],string都什么关系?请指点,谢谢!

###########################################
UnicodeString::UnicodeString  ( const char *  codepageData,  
  const char *  codepage = 0   
)   

char* constructor.


Parameters:
codepageData  an array of bytes, null-terminated  
codepage  the encoding of codepageData. The special value 0 for codepage indicates that the text is in the platform's default codepage.

If codepage is an empty string (""), then a simple conversion is performed on the codepage-invariant subset ("invariant characters") of the platform encoding. See utypes.h. Recommendation: For invariant-character strings use the constructor UnicodeString(const char *src, int32_t length, enum EInvariant inv) because it avoids object code dependencies of UnicodeString on the conversion code.

Stable:
ICU 2.0
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP