C# 处理json

一、 你需要一个json处理的类库
二、 Newtonsoft.Json.dll 一般Visual Studio都自带的
三、 如果没有请下载Newtonsoft.Json.dll

1. 简单使用


string context="{\"name\":\"张三\",\"age\":\"14\"}";
JObject json=(JObject)JsonConvert.DeserializeObject(context);

string name=json.getValue("name");//获取某个值
string age=json.getValue("age");

json.HasValues("name");//是否拥有某个值

2. Json 转为 C# 对象

2.1 开始将 C# 解析Json对应的C# 对象


//在这里将Json对象装换为 DownloadBean 对象
DownloadBean searchs=JsonConvert.DeserializeObject<DownloadBean>(json);

2.2 要解析的Json数据

{
    "status": 1,
    "err_code": 0,
    "data": {
        "hash": "CB7EE97F4CC11C4EA7A1FA4B516A5D97",
        "timelength": 199000,
        "filesize": 3198974,
        "audio_name": "李玉刚 - 刚好遇见你",
        "have_album": 0,
        "album_name": "未知专辑",
        "album_id": 0,
        "img": "http://singerimg.kugou.com/uploadpic/softhead/400/20140304/20140304154338526832.jpg",
        "have_mv": 1,
        "video_id": "596892",
        "author_name": "李玉刚",
        "song_name": "刚好遇见你",
        "lyrics": "[00:00.02]李玉刚 - 刚好遇见你\r\n[00:00.75]词:高进\r\n[00:00.85]曲:高进\r\n[00:00.94]编曲:关天天\r\n[00:13.13]我们哭了\r\n[00:15.79]我们笑着\r\n[00:18.83]我们抬头望天空\r\n[00:21.86]星星还亮着几颗\r\n[00:24.98]我们唱着\r\n[00:27.96]时间的歌\r\n[00:31.09]才懂得相互拥抱\r\n[00:33.98]到底是为了什么\r\n[00:37.30]因为我刚好遇见你\r\n[00:40.77]留下足迹才美丽\r\n[00:43.79]风吹花落泪如雨\r\n[00:46.80]因为不想分离\r\n[00:49.95]因为刚好遇见你\r\n[00:53.10]留下十年的期许\r\n[00:55.99]如果再相遇\r\n[00:59.21]我想我会记得你\r\n[01:14.32]我们哭了\r\n[01:17.23]我们笑着\r\n[01:20.34]我们抬头望天空\r\n[01:23.33]星星还亮着几颗\r\n[01:26.51]我们唱着\r\n[01:29.53]时间的歌\r\n[01:32.59]才懂得相互拥抱\r\n[01:35.59]到底是为了什么\r\n[01:38.73]因为我刚好遇见你\r\n[01:42.23]留下足迹才美丽\r\n[01:45.30]风吹花落泪如雨\r\n[01:48.39]因为不想分离\r\n[01:51.55]因为刚好遇见你\r\n[01:54.54]留下十年的期许\r\n[01:57.61]如果再相遇\r\n[02:00.81]我想我会记得你\r\n[02:03.99]因为刚好遇见你\r\n[02:06.86]留下足迹才美丽\r\n[02:09.94]风吹花落泪如雨\r\n[02:13.03]因为不想分离\r\n[02:16.06]因为刚好遇见你\r\n[02:19.16]留下十年的期许\r\n[02:22.21]如果再相遇\r\n[02:25.34]我想我会记得你\r\n[02:31.40]因为我刚好遇见你\r\n[02:34.51]留下足迹才美丽\r\n[02:37.59]风吹花落泪如雨\r\n[02:40.67]因为不想分离\r\n[02:43.77]因为刚好遇见你\r\n[02:46.84]留下十年的期许\r\n[02:49.94]如果再相遇\r\n[02:53.11]我想我会记得你\r\n",
        "author_id": "2018",
        "privilege": 8,
        "privilege2": "1000",
        "play_url": "http://fs.w.kugou.com/201805151845/af5c878cbbb3554ab9d4b16572bc672e/G078/M08/18/17/jg0DAFgi6G-AKqsqADDP_nSW5F4051.mp3",
        "authors": [
            {
                "is_publish": "1",
                "author_id": "2018",
                "avatar": "20140304154338526832.jpg",
                "author_name": "李玉刚"
            }
        ],
        "bitrate": 128
    }
}

2.3 Json对应的C#对象

public class DownloadBean {
   private string album_name;      //专辑名
   private string hash;            //哈希码
   private string timelength;      //歌曲长度
   private string filesize;        //文件大小
   private string audio_name;      //媒体文件名
   private string img;             //图片地址
   private string author_name;     //专辑名
   private string song_name;       //歌曲名
   private string lyrics;          //歌词
   private string author_id;       //歌手ID
   private string play_url;        //歌曲地址
   private string bitrate;         //歌曲比特率

   public string Hash { get => hash; set => hash=value; }
   public string Timelength { get => timelength; set => timelength=value; }
   public string Filesize { get => filesize; set => filesize=value; }
   public string Audio_name { get => audio_name; set => audio_name=value; }
   public string Img { get => img; set => img=value; }
   public string Author_name { get => author_name; set => author_name=value; }
   public string Song_name { get => song_name; set => song_name=value; }
   public string Lyrics { get => lyrics; set => lyrics=value; }
   public string Author_id { get => author_id; set => author_id=value; }
   public string Play_url { get => play_url; set => play_url=value; }
   public string Bitrate { get => bitrate; set => bitrate=value; }
   public string Album_name { get => album_name; set => album_name=value; }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值