看了一些資料,感覺都很垃圾,或者廢話多,將自己搜尋的比較簡單的方法寫下。需要用NuGet安裝Newtonsoft.Json庫
json文件爲configWRC.json如下內容
{
"JiDianQi_IP": "192.168.1.253",
"QuanJingCameraIP": "192.168.1.123",
"Name":"jueshi",
"Damage":21,
"Duration":15,
"queryorder_info":
{
"order_num":"5",
"orderdetail":"ok"
}
}
讀取語句如下,需要一個讀取json文本的子函數
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
string jsonfile = "configWRC.json";
string jsonText = GetFileJson(jsonfile);
JObject jsonObj = JObject.Parse(jsonText);
string name = jsonObj["JiDianQi_IP"].ToString();
string name2= ((JObject)jsonObj["queryorder_info"])["order_num"].ToString();
讀取json文本的子函數
public string GetFileJson(string filepath)
{
string json = string.Empty;
using (FileStream fs = new FileStream(filepath, FileMode.Open, System.IO.FileAccess.Read, FileShare.ReadWrite))
{
using (StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("gb2312")))
{
json = sr.ReadToEnd().ToString();
}
}
return json;
}
是不是很簡單?此方法可用於多層嵌套,我自己試過5層,在後面加方括號[]即可,已驗證。