要将97到122范围内的数字十进制值x转换为表示该ASCII字符的NSString
,可以直接调用:
[ NSString stringWithFormat: @"%c", x ]
如何为非ASCII字符创建NSString,例如:
ä,è,ñ,à,é,ç,ĝ,ŝ,š,ĥ,þ,ð,ĵ,ü,ś,ź,ż
来自严格的数字输入值? (例如,十进制UInt32
,而不是从查找表中复制或要求任何其他NSString
,Objective-C或Core Foundation数据类型。)
是否有一些在线工具可以查找每个角色需要的任何魔术十进制数值(UTF-foo?)?
答案 0 :(得分:2)
如果你有Unicode值,那么你可以做
uint32_t code = 0x0125; // U+0125 is 'ĥ'
NSString *s = [[NSString alloc] initWithBytes:&code length:4
encoding:NSUTF32LittleEndianStringEncoding];
即使对于“基本多语言平面”之外的单声道,这也适用,例如
uint32_t code = 0x01F604; // = SMILING FACE WITH OPEN MOUTH AND SMILING EYES
上面的代码假定整数以小端字节顺序存储(即 适用于运行iOS或OS X的所有当前处理器的情况。字节顺序无关 方法是
uint32_t code = OSSwapHostToLittleInt32(0x0125);
在Xcode中,您可以在“字符查看器”中查找单声道 “编辑 - >特殊字符...”菜单。当然也有桌子 所有Unicodes都在Unicode 6.3 Character Code Charts。
答案 1 :(得分:2)