我有个问题。如何从 NSData 转换俄语文本?
NSURL *url = [NSURL URLWithString:@"http://pda.somesite"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setAllowCompressedResponse:YES];
[request startSynchronous];
NSLog(@"response %@",[request responseString]);
响应(空)
NSLog(@"Length %i", [[request responseData] length]);
长度 11733
char * dataChar = [[request responseData] bytes];
NSLog(@"%s",dataChar);
//这里我有拉丁文本,但是俄罗斯的符号是这样的 –ñ–∏–≤–æ–µ –æ–±—â–µ–Ω–∏–µ —Å —Ä–µ–∞–ª—å –Ω—ã–º–∏ –ª—é–¥—å–º–∏ —Å–æ –≤—Å–µ–≥–æ –º–∏—Ä–∞!
NSData * newData = [NSData dataWithBytes:dataChar length:127];
取前 127 个字符。如果这里取超过 127 结果为 Null!!为什么?我在 127 之后没有特殊符号。如果我从 127 到 255 取符号,这个文本也可以。
NSString * data = [[NSString alloc] initWithUTF8String:[newData bytes]];
俄罗斯符号看起来不错,但我有 127 个字符长的字符串
NSString * str = [NSString stringWithUTF8String:dataChar];//str -> (null)
NSString * str127 = [NSString stringWithUTF8String:[newData bytes]];//OK but 127 characters