iPhone开发/iPad开发 中文乱码问题
wanxiao08222010-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都是乱码
高手帮忙,在线等,谢了
-----------------------------------------
angelpig442010-08-12 17:45
char *testArray[128];
[plainText getChatacters:testArray];
-----------------------------------------
wanxiao08222010-08-12 20:04
感谢楼上的回复,不过好像不是我需要的,我有一个包含中文的字符串,想转换成char的C字符串,转换后的字符串不想有乱码,不知道可以采用什么方法?本人刚学习开发iPhone应用,请大家多指点
-----------------------------------------
quxiaodong192010-08-12 22:49
一定要轉成CString麼?
NSString *plaintext = [[NSString alloc] initWithUTF8String:@"你好中国"];
NSLog(@"plain:%@",plaintext);
這樣應該可以
-----------------------------------------
wanxiao08222010-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
-----------------------------------------
wanxiao08222010-08-13 12:12
感谢各位的回答,学到了很多,不懂C是人生的一大悲哀呀,明天开始学C语言