歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

帶雙反斜槓的Json數據至單反斜槓的Json數據處理

假如你光看標題,你只能哦呵呵了!我也看不懂。還是先描述下問題吧。這裡是使用微信接口返回了一些數據。因為該串數據包含html標簽所以TX是對該串數據進行了編碼的。所有的數據是通過Unicode編碼的,然後在kindeditor編輯器中中文就變成了\u000a\u0009\u000a\u0009等一些鳥文。

在C#當中自然就變成了\\u000a\\u0009\\u000a\\u0009,通過ASP.NET MVC 的返回JSON的方法: return Json(new { rows = 對象數組 });將帶該數據的對象轉化為Json後就成了\\\\u000a\\\\u0009\\\\u000a\\\\u0009。

第一次,我想要通過前端JS調用replace函數來處理。str.replace(/\\\\/g,'\\');總之各種各樣的都試過了,都用不了。
第二次,通過後台處理一開始直接處理對象屬性,也是行不通。原因是\\u000a本身就是一個反斜槓,替換之後還會是\\u000a。

最後把先把obj序列化為字符串,然後通過result = result.Replace(@"\\", @"\"); 將雙反斜槓處理為單數據從\\\\u000a\\\\u0009變成了\\u000a\\u0009。最後再調用return Json(new { rows = 字符串 });
兩者不是跟之前的一樣?NO,有一點還是不一樣的,就是rows的值從對象變成了字符串。這說明C#在將對象轉化為Json的時候會把單反斜槓\\當成雙反血槓\\\\處理,而字符串則不會。

Struts中異步傳送XML和JSON類型的數據 http://www.linuxidc.com/Linux/2013-08/88247.htm

Linux下JSON庫的編譯及代碼測試 http://www.linuxidc.com/Linux/2013-03/81607.htm

jQuery 獲取JSON數據[$.getJSON方法] http://www.linuxidc.com/Linux/2013-03/81673.htm

用jQuery以及JSON包將表單數據轉為JSON字符串 http://www.linuxidc.com/Linux/2013-01/77560.htm

在C語言中解析JSON配置文件 http://www.linuxidc.com/Linux/2014-05/101822.htm

Copyright © Linux教程網 All Rights Reserved