如何在iPhone中创建JSON格式字符串?

时间:2012-05-04 13:49:59

标签: iphone json string-formatting

我想创建像{“search_element”:“New York”}这样的JSON字符串。我使用了以下代码。

 NSString *JSONString = [NSString stringWithFormat:@"{\"search_element\":""\"%@\"""}",
                            [searchName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 

执行此操作后,我获得了{“search_element”:“New%20York”}这样的价值。我希望它应该是New York而不是New%20York。我没有得到如何格式化它的预期结果。请帮助我。

2 个答案:

答案 0 :(得分:1)

你能不能像那样使用它?

NSString *JSONString = [NSString stringWithFormat:@"{\"search_element\":""\"%@\"""}", searchName];

所以基本上没有stringByAddingPercentEscapesUsingEncoding:方法

我真的不明白为什么要用它:

@"{\"search_element\":""\"%@\"""}"

我用较少的引号来做:

@"{\"search_element\":\"%@\"}"

做了快速测试:

NSString *test = @"{\"search_element\":\"%@\"}";
NSLog(test, @"New York");

输出:

{"search_element":"New York"}

希望有所帮助

答案 1 :(得分:0)

你可以简单地拨打下一个

    NSString *newString = [JSONString stringByReplacingOccurrencesOfString:@"%20" withString:@""];

然而,请查看JSONKitSBJSON ..他们有在iOS中制作有效JSON的方法