今天在用到json的時候,發現對字符串做解析的時候總是多出雙引號。使用的Newtonsoft.Json.dll解析
代碼如下:
string jsonText = "{'name':'test','phone':'18888888888'}"; JObject jo = (JObject)JsonConvert.DeserializeObject(jsonText); string zone = jo["name"].ToString(); string zone_en = jo["phone"].ToString();
取出來的是"test","18888888888"這樣的,研究了好長時間也是不行。
因為用的是Newtonsoft.Json,后來在官網又下載了最新版本,發現取值正確了,取來的test,18888888888
分析原因可就是版本問題,之前用的一直是Newtonsoft.Json.Net20,現在程序框架用的是.net 4.0,下載的最新版本里面對.net各個版本的都有編譯文件,很不錯。
---------------------------------------------思路分割線---------------------------------------------------------
后來看到博主下面一哥們的評論如下:
博主你取值有問題應該是這樣的:
string jsonText = "{'name':'test','phone':'18888888888'}"; JObject jo = (JObject)JsonConvert.DeserializeObject(jsonText); string zone = jo["name"].Value<string>(); string zone_en = jo["phone"].Value<string>();
測試之后果真沒有了引號,太感謝了,故記錄下來,原文地址如下:
