千家信息网

Json.NET的示例分析

发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,小编给大家分享一下Json.NET的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首次遭遇Json格式,缘由项目中
千家信息网最后更新 2025年02月12日Json.NET的示例分析

小编给大家分享一下Json.NET的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

首次遭遇Json格式,缘由项目中用到Json数据,需要进行解析,为此,将Json数据转为了自己较为熟悉的DataTable格式,以此展示至DataGridView中,验证是否成功。

直接上代码:

/// /// JSON数据转换为datatable类型数据/// /// JSON数据字符串/// 转换为DataTable类型的JSON数据private DataTable JSONToDataTable(string strjson){    DataTable dt=new DataTable();    DataColumn dc;    DataRow dr;    #region 添加列    //用于添加列    JsonReader jrcolumn = new JsonTextReader(new StringReader(strjson));    bool hascolumn = false; //当前列名是否存在    while (jrcolumn.Read())    {        //判断当前值是否是字段名        if (jrcolumn.TokenType.ToString() == "PropertyName")        {            //判断当前列名是否在datatable中已存在            foreach (DataColumn column in dt.Columns)            {                if (column.ColumnName == jrcolumn.Value.ToString())                {                    hascolumn = true;    //存在相同名称的列                    break;                }            }            //存在相同列,表示全部结束            if (hascolumn == true)            {                break;            }            //添加新列            dc = new DataColumn();            dc.ColumnName = jrcolumn.Value.ToString();            jrcolumn.Read();            dc.DataType = System.Type.GetType(jrcolumn.ValueType.ToString()); //列类型            dt.Columns.Add(dc);        }    }    #endregion    #region 添加数据记录    //用于添加记录    JsonReader jrrow = new JsonTextReader(new StringReader(strjson));    dr = dt.NewRow();    while (jrrow.Read())    {        if (jrrow.TokenType.ToString() == "PropertyName")        {            string columnname = jrrow.Value.ToString();            jrrow.Read();            dr[columnname] = jrrow.Value.ToString();            if (columnname == dt.Columns[dt.Columns.Count - 1].ColumnName.ToString())            {                dt.Rows.Add(dr);                dr = dt.NewRow();            }        }    }    #endregion    return dt;}

以上是"Json.NET的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0