If you convert the JSON data
{ "result" : "\u8aaa" }
to a NSDictionary
(e.g. using NSJSONSerialization
) and print the dictionary
NSError *error;
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:jsonData options:0 error:&error];
NSLog(@"%@", jsonDict);
then you will get the output
{
result = "\U8aaa";
}
The reason is that the description
method of NSDictionary
uses "\Unnnn" escape sequences
for all non-ASCII characters. But that is only for display in the console, the dictionary is correct!
If you print the value of the key
NSLog(@"%@", [jsonDict objectForKey:@"result"]);
then you will get the expected output
說