LitJson的集合解析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LitJson的集合解析相关的知识,希望对你有一定的参考价值。

参考技术A //生成json数据

List<T> list = new List<T>();

string listJson = JsonMapper.ToJson(list);

Console.WriteLine(listJson);

//解析json

List<T> list = JsonMapper.ToObject<List<T>>(listJson);

然后遍历集合就可以了

注意:LitJson在打包浮点数的时候可能会报错,在运用过程中尽量用整数代替浮点数

使用 LitJson 解析Json并读取数据

开发中经常要获取各种数据,而现今比较常见的数据便是Json数据格式,网上也有很多解析Json数据的方法,但是 作为小白的我,对于那些个高大上的方法理解不够,这不找了许久发了这些一个 LitJson 库,使用此库对Json数据解析简直明了,推荐使用!  

LitJson 使用起来比较简单,这里就不一一扯了,  

类库下载地址:https://files.cnblogs.com/files/ncle/JsondataPro.rar

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 using LitJson;
10 
11 namespace JsondataPro
12 {
13     public partial class Form1 : Form
14     {
15         public Form1()
16         {
17             InitializeComponent();
18         }
19 
20         /// <summary>
21         /// 通过LitJson 读取Json数据格式
22         /// </summary>
23         /// <param name="sender"></param>
24         /// <param name="e"></param>
25         private void button1_Click(object sender, EventArgs e)
26         {
27             //记录程序运行时间开始
28             System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();
29             watch.Start();
30             
31             //读取Json数据
32             JsonData jd = JsonMapper.ToObject(Properties.Resources.json);
33             //得到第一层数据
34             richTextBox1.Text = string.Format("errcode={0},errmsg={1},data={2}", jd[0], jd[1], jd[2])+Environment.NewLine;
35             //得到第二层数据
36             JsonData jd1 = jd[2];  //得到data段
37             richTextBox1.AppendText(string.Format("total={0},page_count={1},page_index={2},page_size={3},word={4}", jd1[0], jd1[1], jd1[2], jd1[3], jd1[4])+Environment.NewLine);
38             //得到第三层数据
39             JsonData jd2 = jd1[4];
40 
41             //循环读取最后想要的数据
42             for (int i = 0; i < jd2.Count; i++)
43             {
44                 JsonData jd3 = jd2[i];
45                 //richTextBox1.AppendText(string.Format("keyword={0},baidu_index={1},long_keyword_count={2}", jd3[0], jd3[1], jd3[2])+Environment.NewLine);
46                 ListViewItem item = new ListViewItem(i.ToString());
47                 item.SubItems.Add(jd3[0].ToString());
48                 item.SubItems.Add(jd3[1].ToString());
49                 item.SubItems.Add(jd3[2].ToString());
50                 item.SubItems.Add(jd3[3].ToString());
51                 item.SubItems.Add(jd3[4].ToString());
52                 item.SubItems.Add(jd3[5].ToString());
53                 item.SubItems.Add(jd3[6].ToString());
54                 item.SubItems.Add(jd3[7].ToString());
55                 item.SubItems.Add(jd3[8].ToString());
56                 listView1.Items.Add(item);
57             }
58 
59             watch.Stop();  //停止监视
60             TimeSpan timespan = watch.Elapsed;  //获取当前实例测量得出的总时间
61             MessageBox.Show("解析Json完毕:共【" + listView1.Items.Count  + "】条记录!打开窗口代码执行时间:{0}(毫秒)"+timespan.TotalMilliseconds); //总毫秒数
62         }
63     }
64 }

 

以上是关于LitJson的集合解析的主要内容,如果未能解决你的问题,请参考以下文章

使用 LitJson 解析Json并读取数据

UnityJson解析---LitJson

C#使用LitJson对Json数据解析

XML数据 JSON数据 LitJSON 数据 的编写和解析 小结

unity怎么导入litjson

Json解析