iPhone开发/iPad开发 中文乱码问题

wanxiao0822 2010-08-12 17:32

新手求助,急,nsstring ,中文乱码问题

本人新手,想将中文的nsstring转成cstring
直接上代码,例如:
NSString *plaintext=@"你好中国";
unsigned int strLength=[plaintext length];
NSLog(@"plain:%@",plaintext);
const char *textarray1=[plainText UTF8String];
const char *textarray2=[plainText cStringUsingEncoding:NSUTF8StringEncoding];
NSLog(@"textarray ::%s" , textarray1);
NSLog(@"textarray ::%s" , textarray2);


以上两种方法都用了,转化前正常, 转化后得到的textarray1和textarray2都是乱码
高手帮忙,在线等,谢了
-----------------------------------------
angelpig44 2010-08-12 17:45
char *testArray[128];
[plainText getChatacters:testArray];
-----------------------------------------
wanxiao0822 2010-08-12 20:04
感谢楼上的回复,不过好像不是我需要的,我有一个包含中文的字符串,想转换成char的C字符串,转换后的字符串不想有乱码,不知道可以采用什么方法?本人刚学习开发iPhone应用,请大家多指点
-----------------------------------------
quxiaodong19 2010-08-12 22:49
一定要轉成CString麼?

NSString *plaintext = [[NSString alloc] initWithUTF8String:@"你好中国"];

NSLog(@"plain:%@",plaintext);

這樣應該可以
-----------------------------------------
wanxiao0822 2010-08-13 09:29
必须的,因为要用Cstring,感谢回答
-----------------------------------------
yoyeayoyea 2010-08-13 09:59
const char *textarray2=[plainText cStringUsingEncoding:0x80000632];
-----------------------------------------
zhc_spark 2010-08-13 10:11
#define MAC_OS_Simplified_Chinese_Encode -2147482062
[ plaintext getCString:textArray maxLength:siezof(textArray)
encoding:MAC_OS_Simplified_Chinese_Encode];

这样得到的是C string.

NSString *plaintext=@"你好中国";
char testArray[128] = {0};

Chinese (GB 18030) === -2147482062
-----------------------------------------
wanxiao0822 2010-08-13 12:12
感谢各位的回答,学到了很多,不懂C是人生的一大悲哀呀,明天开始学C语言
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值