首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Iphone >

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

2012-09-28 
iPhone开发/iPad开发 中文乱码问题wanxiao08222010-08-12 17:32新手求助,急,nsstring ,中文乱码问题本人新

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语言

热点排行