JSON特殊字符的处理

本文转自:http://blog.csdn.net/btt2013/article/details/66970735

JSon 数据中的String 传递数据时,需要处理好特殊字符.

JSon数据中有特殊字符:

1:引号 ,如果是使用单引号,来括值的话,那String 中  ‘  单引号为特殊字符

2:正斜杠,反斜杠,换行符号等。另外,必须用 (") 而非 (‘) 表示字符串: lain c

  1. /**
  2. * JSON字符串特殊字符处理,比如:“\A1;1300”
  3. * @param s
  4. * @return String
  5. */
  6. public String string2Json(String s) {
  7. StringBuffer sb = new StringBuffer();
  8. for (int i=0; i<s.length(); i++) {
  9. char c = s.charAt(i);
  10. switch (c){
  11. case ‘\"‘:
  12. sb.append("\\\"");
  13. break;
  14. case ‘\\‘:
  15. sb.append("\\\\");
  16. break;
  17. case ‘/‘:
  18. sb.append("\\/");
  19. break;
  20. case ‘\b‘:
  21. sb.append("\\b");
  22. break;
  23. case ‘\f‘:
  24. sb.append("\\f");
  25. break;
  26. case ‘\n‘:
  27. sb.append("\\n");
  28. break;
  29. case ‘\r‘:
  30. sb.append("\\r");
  31. break;
  32. case ‘\t‘:
  33. sb.append("\\t");
  34. break;
  35. default:
  36. sb.append(c);
  37. }
  38. }
  39. return sb.toString();
  40. }

原文地址:https://www.cnblogs.com/nizuimeiabc1/p/8434349.html

时间: 2024-11-09 03:47:06

JSON特殊字符的处理的相关文章

JSON特殊字符处理

JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值之间得以快速转换.由于 Ajax 应用程序非常适合将纯文本发送给服务器端程序并对应地接收纯文本,相比不能生成文本的 API,能生成文本的 API 自然更可取:而且,JSON 让您能够处理本地 JavaScript 对象,而无需为如何表示这些对象多费心思. XML 也可以提供文本方面的类似益处,但用于将 JavaScript 对象转换成 XML 的几个现有 API 没有 JSON API 成熟:有

2015第23周四HTML特殊字符显示问题

1.项目中常采用EL表达式来输出后台内容,但测试发现它并不能完美处理要输出内容包含有<>或&等HTML特殊字符问题.先直接给出此问题JSTL的解决方案: 1.引入标签:<%@ taglib uri ="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 这样取值:<input  id="name" value="${fn:escapeXml(n

datagrid不能显示数据,原因在于JSON字符串存在特殊字符

最近在使用easyui的datagrid展示报表时老是出现报表不能正常显示的情况,看所拼接而成的JSON格式数据表面上却没任何的问题,根据经验排查了一下所生产字符串中是否含有特殊字符,果然查到部分字段里存在回车换行符,手动替换之后报表显示正常.问题找到了,接下来就是怎么解决问题的事: 一.从根源解决问题,在数据提交保存的时候就把该替换的全替换掉,一劳永逸.但写出来的东西很长,是不是有点难看. content=trim(Replace(Replace(Replace(Replace(Request

如何处理JSON中的特殊字符

JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值之间得以快速转换.由于 Ajax 应用程序非常适合将纯文本发送给服务器端程序并对应地接收纯文本,相比不能生成文本的 API,能生成文本的 API 自然更可取:而且,JSON 让您能够处理本地 JavaScript 对象,而无需为如何表示这些对象多费心思.静乐县隗承五金 XML 也可以提供文本方面的类似益处,但用于将 JavaScript 对象转换成 XML 的几个现有 API 没有 JSON A

**PHP转义Json里的特殊字符的函数

http://www.banghui.org/11332.html 在给一个 App 做 API,从服务器端的 MySQL 取出数据,然后生成 JSON.数据中有个字段叫 content,里面保存了文章内容,含有大量 HTML 标签,这个字段在转 json 的时候需要转义,因为有大量的特殊字符会破坏 json 的结构. 比如这么一段 content: 'Lorem ipsum "dolor" sit amet, consectetur \ adipiscing elit.' 则必须要转

Json数据中的特殊字符处理

今天在项目中遇到一个问题,页面上的数据突然显示不出来了,查验后得知是Json数据出现了问题.使用JSON从后台向前台传输数据的时候,当数据本身含有一些特殊字符,会导致JSON数据的解析出错.如果内容中本身就包含了 "\"" 双引号."\r\n" 回车换行这时候,数据的解析就会出现问题. \r,\n,\r\n的区别 ? 1 2 3 4 \n是换行,英文是New line,表示使光标到行首 \r是回车,英文是Carriage return,表示使光标下移一格

C# winform端 通过HttpWebRequest进行post和get请求,数据格式为json,后台java端接收,其中有关传输特殊字符(\t,\r,&#39;,\n,n)等处理

问题:C# winform端 通过HttpWebRequest进行post和get请求,数据格式为json,后台java端接收,其中有关传输特殊字符(\t,\r,',\n,n)等处理 原因:传输时,会把空格,\t,\r,',n 等特殊字符序列化为一些%20....等字符 解决: 所以再传输前先在.net端进行System.Web.HttpUtility.UrlEncode(参数)编码,java后台接收端进行URLDecoder.decode(request.getAttribute(参数).to

C#在Json反序列化中处理键的特殊字符

假设有如下Json 数据: view sourceprint? 1.{ 2."id" : 1, 3."@value" : "this a @", 4."$p" : "my name a $" 5.} 通常情况下,在Json反序列化时,将Json映射到序列化的类,无需指定其名称.如 view sourceprint? 1.public JsonTest{ 2.public string id{get;set;

JSON数据的处理中的特殊字符

JSON现在是很常见的处理数据的方式了.但由于自己使用的是反射获取数据,必须自己处理特殊字符,但总是发现有一些看不见的字符在前台 var obj = jQuery.parseJSON(msg);会转换失败. 例如如下在Vs中可以看到只有两个字符 可实际上却有三个字符,使用notepad++打开 一直不明白这些字符是如何进入数据库的,但进入了,就必须处理,否则在前台就会转换失败,导致数据加载失败. 很长时间以为是由于用户复制了一些其他编码的文字,在中文中没有对应的编码,导致的错误.这次又出现了,于