解析非标准JSON谁知道什么类型的JSON(如果知道!)下面的代码是什么?我正在从网站的HTML中检索它。我正在尝试使用JSON解析器在C#中解析它,但我必须根据JSONLint进行大量预编辑才能将其格式化为“有效”JSON。例如,变量名都应该有双引号而不是没有引号。{status:'A',displayed:'Y',start_time:'2010-11-2600:00:00',start_time_xls:{en:'26thofNov201000:00am',es:'26Nov201000:00am'},suspend_at:'2010-11-2619:57:59',is_off:'Y',score_home:'',score_away:'',bids_status:'',period_id:'',curr_period_start_time:'',score_extra_info:'',ev_id:2257335,blurb:'',last_mkts_of_day:false,follow_hcap_mkt:10999896}这将始终具有相同的格式,我很乐意将其直接解析为C#或java中的对象。JSON要求所有名称都用双引号引起来,因此这不是有效的JSON。这是一个有效的Javascript对象。有关JSON格式的问题,请访问:http://json.org/您并不完全清楚要将其转换为JSON,但在Javascript中,您可以使用window.JSON.stringify将其转换为JSON。演示:http://jsfiddle.net/ThinkingStiff/3xZD8/varobject={names:{en:'VirtualMarket-2MinuteLevel',es:'VirtualMarket-2MinuteLevel'},status:'A',displayed:'Y',start_time:'2010-11-2600:00:00',start_time_xls:{en:'26thofNov201000:00am',es:'26Nov201000:00am'},suspend_at:'2010-11-2619:57:59',is_off:'Y',score_home:'',score_away:'',bids_status:'',period_id:'',curr_period_start_time:'',score_extra_info:'',ev_id:2257335,blurb:'',last_mkts_of_day:false,follow_hcap_6},json=window.JSON.stringify(对象);您可以使用Json.Net来解析输入字符串。您甚至可以借助此扩展类使用动态,如下所示(使用您的字符串进行测试)dynamicobj=JsonUtils.JsonObject.GetDynamicJsonObject(jsonstr);Console.WriteLine(obj.names.en);Console.WriteLine(obj.status);Console.WriteLine(obj.start_time_xls.en);Console.WriteLine(obj.suspend_at);使用纯Json.NetJObjectjObj=(JObject)JsonConvert.DeserializeObject(json3);Console.WriteLine(jObj["名称"]["en"]);Console.WriteLine(jObj["status"]);Console.WriteLine(jObj["start_time_xls"]["en"]);Console.WriteLine(jObj["suspend_at"]);是否(我投了“否”票)是否有效:似乎适用于该数据集,我敢打赌他们只是在抛出您的输出,因此暂时可能是安全的。以上就是C#学习教程:解析非标准JSON分享的所有内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
