3
我現在是網絡空氣污染指數的Json值,與Newtonsoft.Json
C#JSON解析一個意外的字符遇到
後大部分網頁都是精品。
但是其中一些可能包含一些特殊字符,我的解析失敗。
代碼如下:
WebClient client = new WebClient();
String strJson = client.DownloadString(url);
JObject jObject = JObject.Parse(strJson);
然後我嘗試轉換仍然UTF8它沒有工作:
WebClient client = new WebClient();
String strJson = client.DownloadString(url);
byte[] utf8Bytes = Encoding.UTF8.GetBytes(strJson);
string safeJsonStr= Encoding.UTF8.GetString(utf8Bytes);
JObject jObject = JObject.Parse(safeJsonStr);
請幫助!
謝謝
我注意到,這種類型的錯誤與附加的「}」在字符串的結尾通常是相關聯的。我在發現異常的地方做了一個黑客解決方法,試圖用從字符串中刪除的最後一個非空白字符再次解析它。 –
好計劃大衛!我會去檢查錯誤報告並查看哪個字符中斷我的程序然後刪除它。如果我將來得到更多,我將只編碼讀取異常並自動刪除字符。 –
當你說特殊的人物你得到什麼性格?你有沒有檢查源JSON是否真的有效?有時候只需要BOM就可以手動跳過。順便說一句,你應該通過響應頭確定編碼類型。 – Gildor