海海日记-冯海滨博客

您现在的位置是:首页 > C# > 正文

C#

Newtonsoft.Json 的序列化与反序列化

happyfhb2016-06-02C#1883

 首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和NHibernate的.我举例说明DataTable的序列化和反序列化.
创建一个DataTable对象,如下:

DataTable dt = new DataTable();
            DataColumn dcName = new DataColumn("Name");
            DataColumn dcAge = new DataColumn("Age");
            DataColumn dcCity = new DataColumn("City");
            dt.Columns.Add(dcName);
            dt.Columns.Add(dcAge);
            dt.Columns.Add(dcCity);
            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                dr[0] = "Name" + i;
                dr[1] = "Age" + i;
                dr[2] = "City" + i;
                dt.Rows.Add(dr);
            }

 序列化:

string json = JsonConvert.SerializeObject(dt);

            Console.WriteLine(json);

结果:

08172959-27120eb338ca4b728fe182410bc723a1.jpg

利用上面得到的序列化字符串反序列化:

DataTable dt1 = JsonConvert.DeserializeObject<DataTable>(json);

            for (int i = 0; i < dt1.Rows.Count; i++)

            {

                DataRow dr = dt1.Rows[i];

                Console.WriteLine("{0}\t{1}\t{2}\t", dr[0], dr[1], dr[2]);

            }

结果:

2.jpg

平淡中储蓄成长

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~