.net 過濾json等字符串里的特殊字符


JSON現在是很常見的處理數據的方式了,但是在使用JSON的時候,有些特殊字符會讓我們得到非預期的結果。JSon數據中常見的特殊字符有:引號,正斜杠,反斜杠,換行符號等。下面介紹JSON中的特殊字符該如何去掉的方法

使用JSON從后台向前台傳輸數據的時候,當數據本身含有一些特殊字符,會導致JSON數據的解析出錯。這個時候,就需要將JSON中的特殊字符過濾掉。

用下面的方法對即將向前台輸出的json字符串進行處理,可以解決鍵盤上能輸入的所有特殊字符問題。

 

 1     /// <summary>  
 2     /// 過濾特殊字符  
 3     /// </summary>  
 4     /// <param name="s"></param>  
 5     /// <returns></returns>  
 6     private static string String2Json(String s)
 7     {
 8         StringBuilder sb = new StringBuilder();
 9         for (int i = 0; i < s.Length; i++)
10         {
11             char c = s.ToCharArray()[i];
12             switch (c)
13             {
14                 case '\"':
15                     sb.Append("\\\""); break;
16                 case '\\':
17                     sb.Append("\\\\"); break;
18                 case '/':
19                     sb.Append("\\/"); break;
20                 case '\b':
21                     sb.Append("\\b"); break;
22                 case '\f':
23                     sb.Append("\\f"); break;
24                 case '\n':
25                     sb.Append("\\n"); break;
26                 case '\r':
27                     sb.Append("\\r"); break;
28                 case '\t':
29                     sb.Append("\\t"); break;
30                 default:
31                     if ((c >= 0 && c <= 31)||c ==127)//在ASCⅡ碼中,第0~31號及第127號(共33個)是控制字符或通訊專用字符
32                     {
33                          //TODO
34                     }                  
35                     else
36                     {
37                         sb.Append(c);
38                     }
39                     break;
40             }
41         }
42         return sb.ToString();
43     }
44 
45             

 


免責聲明!

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



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