关于NSString添加多个字符串的简单问题

时间:2009-07-21 09:53:19

标签: objective-c nsstring

我有一个关于NSString的相当简单的问题,但它似乎没有做我想要的。

这就是我所拥有的

NSString *title = [NSString stringWithformat: character.name, @"is the character"];

这是我的解析器中的一行接受charactername并插入一个plist,但是它没有插入@“是字符”有什么我做错了吗?

2 个答案:

答案 0 :(得分:2)

你的代码错了。它应该是:

NSString *title 
    = [NSString stringWithformat:@"%@ is the character", character.name];

假设character.name是另一个NSString

阅读String Objects paragraph的格式String Programming Guide for Cocoa,了解有关格式化字符串的所有信息。

答案 1 :(得分:0)

stringWithFormat将格式字符串作为第一个参数,因此,假设character.name是您的角色的名称,您需要:

NSString *title = [NSString stringWithformat: @"%s is the character",
    character.name];

你所拥有的是作为格式字符串的字符名称,如果它是@"Bob",那么Bob就是你得到的。如果它是"@Bob %s",那会起作用,但可能会填满你只显示字符名称的其他地方: - )

请注意,您应该使用"%s"作为C字符串,我认为"%@"是正确的格式说明符,如果character.name是NSString本身。