前置NSString?

时间:2010-06-29 12:48:01

标签: objective-c ipad

我从Web服务获取JSON响应,但它没有被我正在使用的JSON解析器所需的[]标记包装,因此我需要在将其传递给JSON之前将这些字符附加并添加到我的NSString中解析器。

这是我到目前为止所做的:

NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
responseString = [responseString stringByAppendingFormat:@"]"];

附加功能完美无缺现在我只需要预先设置[对此,似乎无法找到这种方法。

3 个答案:

答案 0 :(得分:13)

试试这个:

responseString = [NSString stringWithFormat:@"[%@]", responseString]

还有其他方法可以实现同样的目标,我相信其他方法可以提供更有效的方法,但如果responseString不是很大,那么上面就足够了。

答案 1 :(得分:7)

使用 NSMutableString ,您可以这样做:

NSMutableString *str = [[NSMutableString alloc] initWithString:@"Overflow"];
[str insertString:@"Stack" atIndex:0];

之后,NSMutableString str 将保持:

"StackOverflow"

答案 2 :(得分:3)

为了完整性:

responseString = [@"[" stringByAppendingString:responseString];

有时候人们会惊讶于你可以发信息字符串文字,直到他们想到它为止。 ;)