首页 新闻 搜索 专区 学院

c#将json数据转成dictionary格式的调试

0
悬赏园豆:10 [已解决问题] 解决于 2013-01-26 14:43

代码demo:http://files.cnblogs.com/hongfei/json%E6%B5%8B%E8%AF%95.rar

json数据反序列化调试

 

private void button3_Click(object sender, EventArgs e)
        {
            string json = "{\"result\":[{\"MD\":\"0\",\"TI\":\"\u003cfont  color=#C60A00\u003eseo\u003c/font\u003e.\"。。。";
            Dictionary<string, object> dic = JsonHelper.DataRowFromJSON(json);            
            foreach (KeyValuePair<string, object> item in dic)
            {                               
                if (item.Key.ToString() == "result")
                {
                    ArrayList list = (item.Value) as ArrayList;                    
                    for (int i = 0; i < list.Count; i++)
                    {
                        //如何读取result中的数据呢?

                    }
                }
            }
        }
曾是土木人的主页 曾是土木人 | 初学一级 | 园豆:117
提问于:2013-01-21 15:24
< >
分享
最佳答案
0

建议使用Json.NET

收获园豆:2
dudu | 高人七级 |园豆:37797 | 2013-01-22 12:16
其他回答(3)
0

为什么要转换成字典形式呢?按对应关系来说,json是应该对应到c#里的一个对象模型的,你需要建立一个模型类,然后反序列化成这个模型类

收获园豆:2
wdwwtzy | 园豆:226 (菜鸟二级) | 2013-01-21 15:28

我的需求是这样的:

将result中的信息提取出来显示在界面上,转成字典形式好操作(比如:根据键取对应的值)

不然还有其他方法吗?

支持(0) 反对(0) 曾是土木人 | 园豆:117 (初学一级) | 2013-01-21 15:37

@MarcoFly: 哦  试试Newtonsoft.Json,有个JsonConvert.DeserializeObject<Dictionary<string, string>>(json)类似的方法

支持(0) 反对(0) wdwwtzy | 园豆:226 (菜鸟二级) | 2013-01-21 15:51
0

新建一个model,属性跟你jSON字符串一样就可以反序列化了

收获园豆:2
chenping2008 | 园豆:9836 (大侠五级) | 2013-01-21 15:38

能帮我看下吗,我已经将类什么的都写好了,已经能够反序列化了,但是就是不知道怎么读取result中的信息(新手)

这是demo:http://files.cnblogs.com/hongfei/json%E6%B5%8B%E8%AF%95.rar

支持(0) 反对(0) 曾是土木人 | 园豆:117 (初学一级) | 2013-01-21 15:48
0

hi,按照楼主的意思,不是直接list[i]就能得到里面的值了吗?

收获园豆:2
月窟仙人 | 园豆:383 (菜鸟二级) | 2013-01-21 23:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册