Shouldn’t the output be consistent?
When a string is composed with initWithString, the po output is OK, while its NSLog output is wrong. On the other hand, if a string is composed with initWithUTF8String, the po output is not OK, while its NSLog output is OK.
It is better to use non-English text stored in plist file, instead of writing it in the source file directly. However, some people do write code this way, and it should be handled correctly.