字符串中的Unicode字符 - iphone

Ran*_*rns 9 iphone superscript nsstring

我正在研究一个数学应用程序,需要将指数输出到屏幕上.

我发现这段代码可以正常工作:

NSLog(@"x\u2070 x\u00B9 x\u00B2 x\u00B3 x\u2074 x\u2075 x\u2076 x\u2077 x\u2078 x\u2079");
Run Code Online (Sandbox Code Playgroud)

它显示:x⁰x¹x²x³x⁴x⁵x⁶x⁷x⁸x⁹

这也有效:

NSString *testString = @"8.33x10\u00B3";
NSLog(@"test string: %@", testString);
Run Code Online (Sandbox Code Playgroud)

它显示:测试字符串:8.33x10³

即使将其设置为标签,也可以在iPhone屏幕上正确显示:

NSString *testString = @"8.33x10\u00B3";
Answer1Label.text = testString;
Run Code Online (Sandbox Code Playgroud)

但是,当我从名为"8.33x10\u00B3"的.plist中拉出字符串并将其显示在屏幕上时,它只显示为"8.33x10\u00B3"而不是8.33x10³

是否需要在\ u00B3前放置一个额外的角色才能识别它?

谢谢你的帮助!

occ*_*lus 21

\ uXXXX在编译时转换为unicode,因此您不会期望通过读取.plist进行神奇转换.

尝试在"文本模式"下打开Xcode中的plist文件(右键单击plist文件,打开为 - >计划文本文件),然后使用表单文本编辑所需的字符串以包含特殊字符:

⁰
Run Code Online (Sandbox Code Playgroud)

而不是通常\u2070你一直在使用in-code.然后,如果你保存你的plist,关闭它,然后通过双击再次打开它,你会看到通常的plist编辑器视图,它将包含你的特殊字符.

或者,考虑使用OS X的字符查看器(也就是字符调色板)将文本直接输入到XCode中的plist编辑器中.更多信息.