在iphone中解析&到&中的json
Posted
技术标签:
【中文标题】在iphone中解析&到&中的json【英文标题】:Parsing & to & in json in iphone 【发布时间】:2012-08-14 10:40:15 【问题描述】:我有以下 json 响应.. 在这里我只显示了它的几行。
如何将"&"
替换为&
并存储在数组中。
提前致谢。
[
"cat_id": "1",
"cat_name": "Dining & Nightlife",
"0":
"subcat_id": "2",
"subcat_name": "Restaurants"
,
"1":
"subcat_id": "3",
"subcat_name": "Bar & Club"
]
【问题讨论】:
您是否尝试过搜索如何执行此操作? 是的,我试过了。但我只找到了 xmlparser 的方法。不适用于 json 【参考方案1】:您的 JSON 数据未正确编码。除了 JSON 格式,所有的字符串似乎都是 html 编码的。这是双重编码,完全没有必要。
我强烈建议您在源头(即在服务器上)修复此问题。然后你就有了正确的 JSON 数据,可以被许多不同的客户端毫无问题地使用。
如果您无法在服务器上修复它,那么您必须解码 JSON 响应中的每个字符串属性。在您这样做之前,您最好调查一下是否只有 & 号受到影响(不太可能)或其他特殊字符(例如 ä ô)。然后您可以将此添加到您的问题中,我们可能会为您提供帮助。
更新: 我不太明白您使用哪些类将解析的 JSON 数据保存在内存中。 (您提到了 数组。)但要修复双重编码的 & 符号,请在每个字符串上使用以下代码:
str = [str stringByReplacingOccurrencesOfString: @"&" withString: @"&"];
【讨论】:
感谢您的回答。我的 json 响应中只有 & 号特殊字符。有什么方法可以将其替换或转换为&
?
那么你不想从源头上解决问题?
我无法从源头解决这个问题,因为我无法访问它。我没有任何权限访问它
查看我的更新。您可能需要提供有关您正在使用的数据结构的更多详细信息。
我怀疑“stringByReplacingOccurrencesOfString:withString:”在他的字符串中经常出现。【参考方案2】:
试试这个
NSString *sting=[[NSString alloc]init];
sting=[[request responseString] stringByReplacingOccurrencesOfString:@"&" withString:@"&"];
NSDictionary *resDict =[parser objectWithString:sting error:nil];
【讨论】:
【参考方案3】:你必须在采取阵列。并使用 for 循环,您可以将 & 替换为 & 并将该字符串添加到数组中。并制作新的 araay...
【讨论】:
以上是关于在iphone中解析&到&中的json的主要内容,如果未能解决你的问题,请参考以下文章
jquery click 事件不会在 iPhone 中的按钮元素上触发
利用fastjson解析json并通过js&ajax实现页面的无跳转刷新