• .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             
  • 相关阅读:
    DownloadManager
    Android(蓝牙)
    Android下集成Paypal支付
    java 网络(socket)
    java 泛型的几点备忘
    设计模式(模板方法)
    STM32F4_引领入门
    如何查找STM32开发资料
    Keil(MDK-ARM)使用教程(三)_在线调试
    Keil(MDK-ARM)使用教程(二)_菜单
  • 原文地址:https://www.cnblogs.com/sevene/p/4727794.html
Copyright © 2020-2023  润新知