`
cheeruplc
  • 浏览: 115221 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

二维数组,DataTable类的Json字符串反序列化为DataTable

阅读更多
之前使用过将Table类转为Json格式,dotNet中无法顺利进行,于是在网上找到了序列化Table的代码,现在我需要将Json数据有写回Table格式,在网上找了源码没有找到,所以就自己写咯,看看注释相信你不难看懂的:
            #region 将Json 字符串格式反序列话为datatable类型
            string jsonStr = "{\"data\":[{\"id\":\"0\",\"name\":\"name0\"},{\"id\":\"1\",\"name\":\"name1\"},{\"id\":\"2\",\"name\":\"name2\"}]}";
            JavaScriptSerializer jss = new JavaScriptSerializer();
            var obj=jss.DeserializeObject(jsonStr);
            Dictionary<string, object> dic = (Dictionary<string, object>)obj;
            var data = dic["data"];//得到所有行的信息,数组类型,每一个数组是一个Dictionary类型的键值对,即为列
            Array rows =(Array)data;//这里从rows 的每一个元素为一个Dictionary类的对象,相当于datatable中的一行的数据

            DataTable dt = new DataTable();
            foreach (Dictionary<string, object> cols in rows)
            {
                //为datatable添加列
                 if (dt.Columns.Count == 0)
                 {
                      foreach (string key in cols.Keys)
                      {
                          dt.Columns.Add(key);
                      }
                  }
                DataRow dr = dt.NewRow();
                //为行中的每一列列赋值
                foreach (string keyname in cols.Keys)
                {
                    dr[keyname] = cols[keyname];
                }
                dt.Rows.Add(dr);
            }
            this.dataGridView1.DataSource = dt;
            #endregion


看了上面的代码相信如果是而为数组也一定会了吧!

如果转载请说明出处啊[url] http://cheeruplc.iteye.com/blog/1153951[/url]
0
3
分享到:
评论

相关推荐

    C#实现对二维数组排序的方法

    文中提供的代码提供了一种解决方案,它首先将二维数组转换为`DataTable`对象,利用`DataTable`的排序功能,然后将排序后的结果反向映射回二维数组。 这段代码定义了一个名为`Sort&lt;T&gt;`的静态方法,接受三个参数: 1....

    DataTable/二维数组导出Excel,并对数据分页

    此类为通用类,套用模板可以将DataTable,DataSet,二维数组导出成Excel,根据需要可以对数据进行分页

    C# 维数组转换为DataTable 的三个方法

    它接受一个字符串数组列表(每个元素代表一列的数据)以及一个字符串数组(包含列名),并返回一个新的 `DataTable` 对象。 **代码示例**: ```csharp public static DataTable Convert(string[] ColumnNames, ...

    Datatable和json互相转化代码

    - **JavaScriptSerializer**: `JavaScriptSerializer`类是.NET框架提供的一个序列化/反序列化工具,它可以将.NET对象转换成JSON字符串或从JSON字符串转换成.NET对象。 - **MaxJsonLength**: 由于默认情况下,`...

    c#中把DataTable、Dataset转Json数据.docx

    这个方法可以将DataTable转换为Json字符串,Json字符串的格式如下: ```json { "jsonName":[ { "column1":"value1", "column2":"value2", ... }, { "column1":"value1", "column2":"value2", ... }, .....

    Json字符串转换Hashtable,DataTable,DataSet方法和反转换方法

    本篇文章将深入探讨如何在C#环境中,将JSON字符串转换为Hashtable, DataTable, 和DataSet对象,以及如何进行反转换。 首先,我们来看如何将JSON字符串转换成Hashtable。在.NET框架中,可以使用`JsonConvert....

    ASP.NET DataTable与Json互转

    1. **JavaScriptSerializer**: .NET Framework提供了一个内置的`System.Web.Script.Serialization.JavaScriptSerializer`类,可以方便地将DataTable转换为JSON字符串。首先,我们需要创建一个JavaScriptSerializer...

    C#的Json操作类,支持数组,DataTable,DataReader等转Json

    C#的Json操作类,支持数组,DataTable,DataReader等转Json

    asp.net使用DataTable构造Json字符串的方法

    首先,我们来看一个将DataTable转换为JSON字符串的方法,该方法使用了`JavaScriptSerializer`类进行序列化。`JavaScriptSerializer`类能够将.NET的对象序列化成JSON格式的字符串。下面是一个具体实现: ```csharp /...

    json序列化反序列化table

    为了完成序列化的逆过程,即反序列化,提供了 `JsonToDataTable` 方法来将 JSON 字符串转换为 DataTable: ```csharp public static DataTable JsonToDataTable(string str) { DataTable dt = new DataTable(); /...

    C# 转换实体类为Json字符串

    实体类转换成 JSON 字符串,将datatable转换为json,DataTable转换实体类

    json序列化与反序列化实例

    将JSON反序列化为DataSet可能涉及到将JSON解析为DataTable,然后将这些表添加到DataSet中。反之,序列化DataSet为JSON则需要将数据集的内容转换为JSON格式的字符串。 在实际应用中,JSON序列化和反序列化对于跨平台...

    DataTable转成Json

    1. **初始化JSON字符串**:使用`StringBuilder`来构建JSON字符串,因为其性能优于使用字符串拼接。 2. **检查DataTable是否为空**:如果DataTable不为空并且包含至少一行数据,则继续执行后续逻辑。 3. **遍历...

    把实体类数组转换为DataTable C#

    在处理数据时,我们经常需要在不同的数据结构之间转换,例如从实体类数组转换为DataTable。DataTable是System.Data命名空间中的一个类,它是ADO.NET的一部分,常用于存储和操作数据集。本文将详细介绍如何在C#中实现...

    Json序列化类,小而轻的帮助类

    这些方法允许用户将JSON字符串转换为对象(`Json2Object`),将对象转换为JSON字符串(`Object2Json`虽然没有具体实现,但可以推断其功能),将`DataTable`转换为JSON字符串(`DataTable2Json`),以及将列表转换为...

    C#将json格式转换成DataTable实例

    Newtonsoft.Json库提供了JsonConvert类,该类包含许多序列化和反序列化的静态方法,其中包括将JSON字符串转换为.NET对象的方法。 以下是一个具体的实例,展示如何将JSON字符串转换为DataTable: ```csharp using ...

    C# json 转换成DataTable

    // 将 JSON 字符串反序列化为 ArrayList 对象 if (arrayList.Count &gt; 0) // 如果 ArrayList 不为空 { foreach (Dictionary, object&gt; dictionary in arrayList) // 遍历 ArrayList 中的每一个 Dictionary 对象 ...

    datatable转换成JSON格式的方法

    接着,通过JavaScriptSerializer的Serialize方法将DataTable转换为JSON字符串并打印出来。 如果你需要将XML转换为JSON,可以先将XML读入到DataTable,再按照上述方法转换。例如,你可以使用System.Xml.Linq库中的...

    Datatable转Json通用方法

    Datatable转Json格式通用方法,亲自编写,亲测可用,欢迎下载!

Global site tag (gtag.js) - Google Analytics