如何在Objective-C中进行字符串格式化?

时间:2011-04-17 22:31:37

标签: iphone objective-c cocoa-touch json nsstring

我正试图将我的iPhone应用程序中的文字发布到Facebook上的墙上。一切正常,但是,我的问题是我不知道如何格式化文本。我想向用户显示他们在应用上查看的餐馆的名称,地址,城市,州和电话号码。这是我的相关代码:

- (void)postToWall {

FBStreamDialog* dialog = [[[FBStreamDialog alloc] init] autorelease];
dialog.userMessagePrompt = @"Enter your message:";
dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@ got straight A's!\",\"href\":\"http://www.example.com/\",\"caption\":\"%@ must have gotten real lucky this time!\",\"description\":\"\",\"media\":[{\"type\":\"image\",\"src\":\"http://www.abc.png\",\"href\":\"http://www.example.com/\"}]}",
                     _facebookName, _facebookName];
dialog.actionLinks = @"[{\"text\":\"Download GetHalal!\",\"href\":\"http://www.example.com/\"}]";
[dialog show];

}

我想向用户显示dialog.attachment变量中的餐馆信息,以便facebook墙上的输出如下所示:

restaurant.name restaurant.address restaurant.city,restaurant.state restaurant.phoneNumber

我的问题是,上面的文字似乎是JSON格式。餐厅对象在课堂上可用,我想将它包含在上面的代码中,但我不知道如何。谁能告诉我怎么做?

1 个答案:

答案 0 :(得分:2)

使用JSON库:

https://stackoverflow.com/questions/286087/best-json-library-to-use-when-developing-an-iphone-application

另外,查看Facebook的sdk for iOS:

http://developers.facebook.com/docs/guides/mobile/#ios

此StackOverflow帖子中接受的答案包含您需要的代码,使用JSONfragment:

How to post a message with attachment in Facebook?

(请注意,在这种情况下,使用的库是http://code.google.com/p/json-framework/