在NSString中插入一个字符

时间:2009-12-06 12:06:37

标签: iphone nsstring

我对subj。

有困难

我有NSString文本,包含“SLOVO”,我需要NSMutableString * currentRequest包含“%t%e%x%t%”。 我在循环中尝试:

     [currentRequest appendFormat:@"%c%%", [text characterAtIndex:i]];

它工作正常,但如果文本包含例如“Rüdiger”,我的意思是非拉丁符号,那么currentRequest包含完整的垃圾!

我看到决定是有用的 (void)insertString:(NSString *)aString atIndex:(NSUInteger)anIndex 但我认为这不是正确的方法。 可能是正确的方式吗?

感谢。

1 个答案:

答案 0 :(得分:3)

我可能误解了,但我认为appendFormat的问题是%c格式说明符与characterAtIndex方法的返回类型不匹配。

方法characterAtIndex返回unichar,而%c则需要8位unsigned char。请在您的格式字符串中使用%C(大写C)。

一些Apple开发人员文档供参考: