[str replaceOccurrencesOfString: withString: options: range:
[str replaceOccurrencesOfString:@"'" withString:@"!~" options:0 range:NSMakeRange(0,str.length)]
我正在使用此函数将 ' 符号替换NSMutableString
为 !~ 符号,以便我可以将该字符串存储到数据库中。当我将它存储到数据库中时它工作正常,但是在检索并使用相同的函数将其转换回来时它向我显示错误。
错误
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Attempt to mutate immutable object with replaceOccurrencesOfString:withString:options:range:'
这里,str
是NSMutableString
类型。我检查了它的类型,[str class]
它的转换NSCFString
者不知道它为什么会改变?我也尝试将其转换为NSMutableString
,但它没有转换。我以其他方式尝试了很多次,但它在所有其他地方都可以正常工作,仅在我的一个视图控制器中,它向我展示了这一点。
任何猜测我在哪里做错了吗?