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 = @"اÙÙØÙÙ ÙØ¯Ù ÙÙÙÙÙÙÙ Ø±ÙØ¨Ù٠اÙÙØ¹ÙاÙÙÙ ÙÙÙÙ";