加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 如何使用KEY字符串解析没有引号的JSON?

发布时间:2020-12-16 06:59:59 所属栏目:百科 来源:网络整理
导读:我想在iOS的SB JSON框架中解析由以下url产生的json输出 http://maps.google.com/maps?q=schoolmrt=ypsll=13.006389,80.2575output=json while(1);{title:"school - Google Maps",url:"/maps?q=schoolx26mrt=ypx26sll=13.006389,80.2575x26ie=UTF8x26hq=s
我想在iOS的SB JSON框架中解析由以下url产生的json输出
http://maps.google.com/maps?q=school&mrt=yp&sll=13.006389,80.2575&output=json

while(1);{title:"school - Google Maps",url:"/maps?q=schoolx26mrt=ypx26sll=13.006389,80.2575x26ie=UTF8x26hq=schoolx26hnear=",urlViewport:false,ei:"RCu3T4eeMqSiiAe7k-yZDQ",form:{selected:"q",q:{q:"school",mrt:"yp",what:"school",near:""},d:{saddr:"",daddr:"",dfaddr:""},geocode:""},

我正在使用http://www.bodurov.com/JsonFormatter/在线阅读.

在ASIHttpRequest响应方法中我删除了while(1);从回应

NSString *responseString = [[request resonseString]substringFromIndex:9]; //to remove while(1)
SBJSONParser * parser = [[SBJSONParser alloc]init];
NSDictionary *jsonDict = (NSDictionary*)[parser objectFromString:responseString];
NSLog(@"%@",jsonDict) // prints null
// [responseString JSONValue] also reports error

我猜没有双引号的JSON密钥会导致问题.

代替 {
????“标题”:“医院 – 谷歌地图”,
????“urlViewport”:false,
???我们得到{
????标题:“医院 – 谷歌地图”,
????“urlViewport”:false
}

请帮我解析从谷歌返回的这个复杂的JSON结构.

解决方法

这对我的情况更有效,因为我的值包含导致上述答案中的正则表达式错误匹配的次数.

json = [json stringByReplacingOccurrencesOfString: @"(w*[A-Za-z]w*)s*:"
                                       withString: @""$1":"
                                          options: NSRegularExpressionSearch
                                            range: NSMakeRange(0,json.length)];

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读