C#獲取json字符串指定的值


Newtonsoft.Json在json和對象之間轉化是一個非常強大的工具。

對象轉化json字符串

Newtonsoft.Json.JsonConvert.SerializeObject()

json字符串轉化為指定對象

 Newtonsoft.Json.JsonConvert.DeserializeObject<>()

json字符串直接獲取指定元素值(類似XML)

var jObject=JObject.Parse(jsonstring);
var time= jObject["time"].ToString();//獲取time{"time":"2016-06-06 11:11:11"}

 xml轉換json字符串

XmlDocument doc = new XmlDocument();  
doc.LoadXml(PostBackXml);
var jObject = Newtonsoft.Json.JsonConvert.SerializeXmlNode(doc);//Xml轉json

 當上面的XML在序列化是通常會出現根目錄,根目錄內出現的才是需要序列化的對象元素。

不妨先轉換為JObject,像下面這樣使用jobj["MongoTask"]轉換

 var json=JsonConvert.SerializeXmlNode(item);
 var jobj = JsonConvert.DeserializeObject<JObject>(json);
 tasklist.Add(jobj["MongoTask"].ToObject<MongoTask>());

 如果需要獲取XML中屬性的值,比如獲取<user name='張三'>獲取張三時name屬相帶有@符號

代碼中過濾到@符號就可以正常取值

var jobj = Newtonsoft.Json.JsonConvert.DeserializeObject<JObject>(jObject.Replace("@",""));
var name= jobj["Response"]["Body"]["OrderResponse"]["name"];

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM