Json序列化和反序列化

2021-08-14 05:45:23 字數 2438 閱讀 1588

/// /// json測試

///

public class jsontest : irun

;//實體序列化和反序列化

string json1 = jsonhelper.serializeobject(sdudent);

//json1 : }

student sdudent1 = jsonhelper.deserializejsontoobject(json1);

//實體集合序列化和反序列化

listsdudentlist = new list() ;

string json2 = jsonhelper.serializeobject(sdudentlist);

//json: [},}]

listsdudentlist2 = jsonhelper.deserializejsontolist(json2);

//datatable序列化和反序列化

datatable dt = new datatable();

dt.tablename = "student";

dt.columns.add("id", typeof(int));

dt.columns.add("name");

dt.columns.add("nickname");

datarow dr = dt.newrow();

dr["id"] = 112;

dr["name"] = "戰三";

dr["nickname"] = "小三";

dt.rows.add(dr);

string json3 = jsonhelper.serializeobject(dt);

//json3 :

datatable sdudentdt3 = jsonhelper.deserializejsontoobject(json3);

listsdudentlist3 = jsonhelper.deserializejsontolist(json3);

//驗證物件和陣列

student sdudent4 = jsonhelper.deserializejsontoobject("");

listsdudentlist4 = jsonhelper.deserializejsontolist("");

//匿名物件解析

var tempentity = new ;

string json5 = jsonhelper.serializeobject(tempentity);

//json5 :

tempentity = jsonhelper.deserializeanonymoustype("", tempentity);

var tempstudent = new student();

tempstudent = jsonhelper.deserializeanonymoustype("", tempstudent);

console.read();}}

/// /// 學生資訊實體

///

public class student

public string name

public string nickname

public class class

}/// /// 學生班級實體

///

public class class

public string name

}

下面是json序列化和反序列化的簡單封裝:

/// /// json幫助類

///

public class jsonhelper

/// /// 解析json字串生成物件實體

///

/// 物件型別

/// json字串(eg.)

/// 物件實體

public static t deserializejsontoobject(string json) where t : class

/// /// 解析json陣列生成物件實體集合

///

/// 物件型別

/// json陣列字串(eg.)

/// 物件實體集合

public static listdeserializejsontolist(string json) where t : class

/// /// 反序列化json到給定的匿名物件.

///

/// 匿名物件型別

/// json字串

/// 匿名物件

/// 匿名物件

public static t deserializeanonymoustype(string json, t anonymoustypeobject)

}

json序列化 反序列化

json序列化 json的dumps方法可以將json格式資料序列為python的相關資料型別,比如str,常用於列印,另外,在序列化時,中文漢字被轉換為unicode編碼,在dumps函式中新增引數ensure ascii false可解決 dumps的indent參考可以調整顯示格式,即縮排,一...

Json串序列化和反序列化

初始化乙個資料字典,將它轉化為json串,並將轉化後的json串再轉化為字典物件 using system using system.collections.generic using system.linq using system.web using system.web.ui using sy...

JSON的序列化和反序列化

今天看了好多關於解析json的例子,但是都不全,而且還要自己找dll,於是自己寫了乙個全的json解析類,供以後參考 下面給出乙個要解析的字串 str str 1 解析json的工具類如下 1 在專案中新增引用 newtonsoft.json.dll,見附件 using system using s...