C#后端json数据的解析

C#后端json数据的解析

大家看上面这一段数据是不是似曾相识,没错,这就是百度翻译返回的Json,但当我们拿到这一串json字符串,怎么获取我们想要的数据呢,这就需要解析一下。

首先我们新建一个winform。
在这里插入图片描述
然后我们对winform进行布局。下面是我布局的样式

在这里插入图片描述
好,话不多说,上代码。

{“from”:“zh”,“to”:“kor”,“trans_result”:[{“src”:"\u4f60\u597d",“dst”:"\uc548\ub155\ud558\uc138\uc694."}]}

我们再观察一下这段json,一般一段数据的传输,json格式是不变的,所以我们根据这段json代码生成实体类,这里再推荐一下这个网站链接: https://www.bejson.com/convert/json2csharp/.,将json数据转换为实体类。

    public class Trans_resultItem
    {
        /// <summary>
        /// 你好
        /// </summary>
        public string src { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string dst { get; set; }
    }

    public class Root
    {
        /// <summary>
        /// 
        /// </summary>
        public string @from { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string to { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<Trans_resultItem> trans_result { get; set; }
    }

然后我们在button1的点击事件写入以下代码

private void button1_Click(object sender, EventArgs e)
       {
           string retString = textBox1.Text;
           Root rt = JsonConvert.DeserializeObject<Root>(retString);
           //由于这个JSON字符串的 public List<DataItem> data 是一个集合,所以我们需要遍历集合里面的所有数据
           for (int i = 0; i < rt.trans_result.Count; i++)
           {
               textBox2.Text = rt.trans_result[i].dst;
           }
       }

在这里插入图片描述
我们发现了一个问题,JsonConvert这个函数标红了,我们这时需要引入一个包,newtonsoft.json,我们只需通过vs自带的nuget安装就行了。

install-package newtonsoft.json

在这里插入图片描述

在这里插入图片描述
安装成功后,这时我们 using Newtonsoft.Json; 就行了
然后测试一下,小伙伴们学会了吗
{"from":"zh","to":"kor","trans_result":[{"src":"\u4f60\u597d","dst":"\uc548\ub155\ud558\uc138\uc694."}]}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值