NSString * string = @"االْحَمْدُ لِلَّهِ رَبِّ الْعَالَمِينَ";
const char *c = [string cStringUsingEncoding:NSUTF8StringEncoding];
NSString *newString = [[NSString alloc]initWithCString:c encoding:NSISOLatin1StringEncoding];
NSLog(@"%@",newString);
// NSString * staticEncodedString = @"اÙÙØÙÙ Ùد٠ÙÙÙÙÙÙ٠رÙبÙ٠اÙÙعÙاÙÙÙ ÙÙÙÙ";
const char *cvvv = [newString cStringUsingEncoding:NSISOLatin1StringEncoding];
NSString *newStringV = [[NSString alloc]initWithCString:cvvv encoding:NSUTF8StringEncoding];
NSLog(@"%@",newStringV);
为什么直接注释编码字符串不转换为阿拉伯语?当我对阿拉伯语进行硬编码时,它会编码然后正确解码,但是为什么静态编码的字符串不能在阿拉伯语中不可读?
感谢您的回复杰克。是的,我在解码“staticEncodedString”时丢失了数据。但我想要的只是将以下字符串解码回阿拉伯语。
NSString * staticEncodedString = @"اÙÙØÙÙ Ùد٠ÙÙÙÙÙÙ٠رÙبÙ٠اÙÙعÙاÙÙÙ ÙÙÙÙ";