jsyz07935 2015-08-04 05:07 采纳率: 25%
浏览 1905
已采纳

各位大哥帮小弟看一下c#用newtonsoftJson怎么解析下面这段json

{
    "errNum": 0,
    "errMsg": "success",
    "retData": {
        "from": "en",
        "to": "zh",
        "dict_result": {
            "word_name": "hello",
            "symbols": [
                {
                    "ph_am": "hɛˈlo, hə-",
                    "ph_en": "hə'ləʊ",
                    "parts": [
                        {
                            "part": "int.",
                            "means": [
                                "哈喽,喂",
                                "你好,您好",
                                "表示问候",
                                "打招呼"
                            ]
                        },
                        {
                            "part": "n.",
                            "means": [
                                "“喂”的招呼声或问候声"
                            ]
                        },
                        {
                            "part": "vi.",
                            "means": [
                                "喊“喂”"
                            ]
                        }
                    ]
                }
            ]
        }
    }
}


我想把里面的那些解释的意思(means)提取出来,无奈是新手弄了半天没弄出来 请各位帮帮忙

  • 写回答

2条回答 默认 最新

  • Go 旅城通票 2015-08-04 05:59
    关注

    建立好类后序列化就好了。。代码如下

         public class Parts { public System.Collections.Generic.List<string> means; }
        public class Symbols { public System.Collections.Generic.List<Parts> parts; }
        public class Dict_result { public System.Collections.Generic.List<Symbols> symbols;}
        public class RetData { public Dict_result dict_result;}
        public class Json { public RetData retData; }
        protected void Page_Load(object sender, EventArgs e)
        {
            string d = System.IO.File.ReadAllText(Server.MapPath("bb.txt"), Encoding.UTF8);//这里改为你获取到的字符串,测试将你的内容放入文件里面进行读取
            Json o = Newtonsoft.Json.JsonConvert.DeserializeObject(d, typeof(Json)) as Json;
            foreach(Symbols symbol in  o.retData.dict_result.symbols)
                foreach(Parts part in symbol.parts)
                    foreach (string s in part.means) {
                        Response.Write(s + "<br>");
                    }
        } 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况