免费注册 查看新帖 |

Chinaunix

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

繁体 我糊涂了 求指点迷津 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-27 16:29 |只看该作者 |倒序浏览
通过API 返回的字串 我按空格截取,要怎么做呢?

简体系统 和繁体系统 处理一样么?

论坛徽章:
0
2 [报告]
发表于 2008-11-27 16:33 |只看该作者
假设 std::string str ;

  XXXXAPI(str);//从系统中读到设备的名字 英文 例如 :”Geforce 7600“

要在简繁体系统都正常运行 我要怎么来得到geforce   和 7600呢

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
3 [报告]
发表于 2008-11-27 16:40 |只看该作者

回复 #2 yjqyml 的帖子

string a;
int b;
istringstream istream(str);
istream>>a>>b;
("再去掉a最后的空格。")--->>刚开始时,我说了左边括号的话。。这句不必要的,一般情况下,使用输入操作符string时,空白符将会被忽略。

[ 本帖最后由 yangsf5 于 2008-11-29 09:56 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-11-27 16:55 |只看该作者
哦哦哦 晓得了~~

还有一个问题~ 怎么判断 a == "Geforce" 呢~

还是简繁体下面

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
5 [报告]
发表于 2008-11-27 17:14 |只看该作者
strcmp(a.c_str(), "Geforce");

论坛徽章:
0
6 [报告]
发表于 2008-11-27 18:42 |只看该作者
原帖由 yangsf5 于 2008-11-27 17:14 发表
strcmp(a.c_str(), "Geforce");



如果系统返回的是utf8的呢? 也是”Geforce“?

论坛徽章:
0
7 [报告]
发表于 2008-11-27 19:06 |只看该作者
首先确定所得的字符串编码是什么?总不能一会儿UTF8,一会儿又gbk,一会儿又big5。不过可以看看在这些编码下空格都用什么表示,如果表示都一样,那也就没必要分简繁、或是编码了

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
8 [报告]
发表于 2008-11-27 19:52 |只看该作者

回复 #6 yjqyml 的帖子

抱歉,编码方面的知识还不多。。期待其他人解答。

论坛徽章:
0
9 [报告]
发表于 2008-11-27 20:12 |只看该作者

回复 #6 yjqyml 的帖子

utf8里面ascii跟unicode字符是不会混淆的,所以英文单词编码跟纯ascii一样

论坛徽章:
0
10 [报告]
发表于 2008-11-28 09:38 |只看该作者
系统字符集是ANSI集还是宽字符集(Unicode)?
试试看使用NT,编译时定义UNICODE=1, _MBCS=1。这样编译出来的程序默认使用Unicode API。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP