I'm trying to read strings from an array that's coming from a plist and print those strings.
The strings in the array contain escaped UTF8 characters - for example "Nuša Florjančič" becomes "Nu\u0161a Florjan\u010di\u010d"
when read from the plist. There is no way to change the content of the plist, but my program needs to display the names properly.
The strange thing is that Objective-C seems to do this automatically when I'm hardcoding the string. However, if I get the string from the plist nothing happens at all.
To give you an example, here's some code:
NSString *name1 = @"Nu\u0161a Florjan\u010di\u010d";
NSString *name2 = [list objectAtIndex:0];
NSLog(@"name 1: %@", name1);
NSLog(@"name 2: %@", name2);
[list objectAtIndex:0]
contains @"Nu\u0161a Florjan\u010di\u010d"
- the only difference is that it has been set via the plist editor.
The console output is:
2011-10-22 18:00:02.595 Test[13410:11c03] name 1: Nuša Florjančič
2011-10-22 18:00:02.595 Test[13410:11c03] name 2: Nu\u0161a Florjan\u010di\u010d
I've tried all sorts of things, including transforming the string into a C-string and then creating an NSString
object with a UTF-8 encoding but nothing worked at all.
I'd really appreciate any pointers from you that might help me solve this seemingly mundane problem.