關於Newtonsoft Json中的集合資料轉換

2022-05-09 07:15:08 字數 1931 閱讀 6182

1.巢狀屬性的類序列化時會報錯.

如:class person

public int age

public string gender

public string remark

public listgroup

} persona中有乙個list屬性,這將導致序列化時,如果這個屬性中有物件自身,那麼這個樹就會無限迴圈,所以拋異常.

還是以上邊的示例,在用jsonconvert.serializeobject()方法時,如果序列化person.group這樣的集合屬性,其json文字是如下這樣的:,,

]}但如果序列化的是乙個list集合,其文字是如下這樣的:

[,,]

而我們持續向某乙個json文字中新增serialized後的jsontext,結果是向下邊這樣的:

// 注意,這種檔案不符合json文件格式,在deserialize時會丟擲異常:

newtonsoft.json.jsonreaderexception:

"additional text encountered after finished reading json content: ;

var lily = new person() ;

var park = new person() ;

var ted = new person() ;

listgroup1 = new list() ;

= group1;

= group1;

= group1;

= group1;

jsonserializersettings jssetting = new jsonserializersettings();

jssetting.nullvaluehandling = nullvaluehandling.ignore;

string jackjson = jsonconvert.serializeobject(jack, formatting.indented, jssetting);

string tedjson = jsonconvert.serializeobject(ted, formatting.indented, jssetting);

string groupjson = jsonconvert.serializeobject(group1);

string parkjson = jsonconvert.serializeobject(park, formatting.indented, jssetting);

console.writeline(jackjson);

console.writeline(tedjson);

console.writeline(parkjson);

string jsontextcoll = jackjson + tedjson + parkjson;

person result1 = jsonconvert.deserializeobject(jackjson) as person;

person result2 = jsonconvert.deserializeobject(jackjson);

listresult3 = jsonconvert.deserializeobject>(groupjson);

listresult4 = jsonconvert.deserializeobject(groupjson) as list;

listresult5 = jsonconvert.deserializeobject(jsontextcoll) as list;

console.readkey();}}

class person

public int age

public string gender

public string remark

//public listgroup }}

關於程式關於世界

首先,在學了1年多的軟體設計的基礎上,問下自己 程式是什麼?業務需求是什麼?程式有什麼用?什麼是演算法?什麼是資料庫?或許每個人的理解不同,會給出不同的答案。那麼自己的理解 程式是乙個讓計算機工作的流程,在程式寫好之後,計算機就會按照,程式設計師定義好流程在執行。其實很多時候,乙個程式的好壞,在於乙...

關於血液關於軟體

1 自然沉降法 將血袋垂直吊掛於4 2 冰箱內,使紅細胞自然下沉1 3d,或將血袋呈70 80 角立於冰箱,需用時,用一次性分漿器分出血漿,制得濃縮紅細胞。2 洗滌法 一般用生理鹽水反覆洗滌3 6次。經洗滌的紅細胞,除白細胞和血小板減少外,血漿蛋白也極少,紅細胞中殘存的血漿蛋白含量約為原總蛋白的1 ...

關於冷漠,關於愛情

我不知道為什麼今天又莫名其妙開始思考愛情這件事,隨之就解決了我一直無法面對冷漠這件事 被冷漠是我始終無法消化的一件事,每當遇見冷漠時,我總會覺得就像一團火把自己燒得面目全非,但對方卻毫無傷害。但我突然懂了,遇到冷漠時,體面的離開即可 在乎你的人一定會在你離開後,找到你跟你解釋為什麼 連解釋都來不及,...