json,xml序列號與反序列化常用一些功能記錄下,方便查詢
序列號與反序列化屬性:
using newtonsoft.json;
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.xml.serialization;
public int age
public string ***
[jsonproperty("身高")]//序列化high為身高
[xmlelement("身高")]//序列化high為身高
public string high
[jsonignore]//序列化忽略此欄位
[xmlignore]//序列化忽略此欄位
public string weight
}[xmltype(typename = "funs")]//取子節點root開始反序列化personfuns
public class personfuns
}}
序列化操作
person student = new person() ;
string jsonstr = jsonconvert.serializeobject(student);
console.writeline("json序列化內容" + jsonstr);
xmlwritersettings settings = new xmlwritersettings();
settings.indent = true;
settings.indentchars = " ";
settings.newlinechars = "\r\n";// 換行
settings.encoding = encoding.utf8;//編碼格式
settings.omitxmldeclaration = false;// 不生成宣告頭 <?xml version="1.0" encoding="utf-16"?>
stringwriter xmltest = new stringwriter();
xmlwriter sw = xmlwriter.create(xmltest, settings);
// 強制指定命名空間,覆蓋預設的命名空間
//去掉<?xml version="1.0" encoding="utf-16"?>< person xmlns: xsd = "" xmlns: xsi = "http:/www.w3.org/2001/xmlschema-instance" >
xmlserializernamespaces namespaces = new xmlserializernamespaces();
namespaces.add(string.empty, string.empty);
//生成xml
xmlserializer serializer = new xmlserializer(student.gettype());
serializer.serialize(sw, student, namespaces);//
sw.close();
console.writeline("xml序列化內容" + xmltest);
//xml反序列化為實體
using (stringreader sr = new stringreader(xmltest.tostring()))
json序列化與反序列化
1.什麼是序列化與反序列化?序列化就是將記憶體中的資料結構轉換成一種中間格式儲存到硬碟或者基於到網路傳輸。反序列化就是將硬碟中或者網路中傳來的一種資料格式轉換成記憶體中資料格式。2.為什麼要有序列化和反序列化?1.可以儲存程式的執行狀態。比如遊戲中使用者在某個狀態下線,使用者遊戲的資料需要儲存,這時...
xml序列化與反序列化
序列化是將物件狀態轉換為可保持或傳輸的格式的過程。與序列化相對的是反序列化,它將流轉換為物件。這兩個過程結合起來,可以輕鬆地儲存和傳輸資料。序列化的目的 1 以某種儲存形式使自定義物件持久化 2 將物件從乙個地方傳遞到另乙個地方。net framework 提供兩種序列化技術 二進位制序列化保持型別...
json序列化 反序列化
json序列化 json的dumps方法可以將json格式資料序列為python的相關資料型別,比如str,常用於列印,另外,在序列化時,中文漢字被轉換為unicode編碼,在dumps函式中新增引數ensure ascii false可解決 dumps的indent參考可以調整顯示格式,即縮排,一...