过滤方法用的是Discuz中的过滤方法!

        /// <summary>/// 加载事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>protected void Page_Load(object sender, EventArgs e){if(!IsPostBack){FileStream fsSteam = new FileStream(Server.MapPath("~/SQLLog.txt"), FileMode.Open); //SQLLog.txt 里面的文本为:今天真\n\\n\b\\\\\\的很"高兴"!StreamReader sr = new StreamReader(fsSteam,System.Text.Encoding.GetEncoding("gb2312"));string message = JsonCharFilter(sr.ReadToEnd()); // 这里需要过滤一下,以保证JSON解析后显示的值与SQLLog.txt中的一模一样。sr.Close();fsSteam.Dispose();string json = "{ IfSuccess : true, Message : '" + message + "' }";this.ltMessage.Text = json;}}/// <summary>/// Json特符字符过滤,参见http://www.json.org//// </summary>/// <param name="sourceStr">要过滤的源字符串</param>/// <returns>返回过滤的字符串</returns>public static string JsonCharFilter(string sourceStr){sourceStr = sourceStr.Replace("\\", "\\\\");sourceStr = sourceStr.Replace("\b", "\\\b");sourceStr = sourceStr.Replace("\t", "\\\t");sourceStr = sourceStr.Replace("\n", "\\\n");sourceStr = sourceStr.Replace("\n", "\\\n");sourceStr = sourceStr.Replace("\f", "\\\f");sourceStr = sourceStr.Replace("\r", "\\\r");return sourceStr.Replace("\"", "\\\"");}

前台代码:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server"><title></title>
</head>
<body><form id="form1" runat="server"><div><asp:Literal ID="ltCurrentMessage" runat="server" /></div><div id="divMessage"><asp:Literal ID="ltMessage" runat="server" /></div><div><asp:Button ID="btnSubmit" runat="server" Text="提交" OnClick="btnSubmit_Click" /></div></form><script language="javascript" type="text/javascript">///<summary>用正则表达式将前后空格,用空字符串替代。</summary>String.prototype.trim = function(){return this.replace(/(^\s*)|(\s*$)/g, "");}var jsonStr = document.getElementById("divMessage").innerHTML.trim();var jsonObj = eval("(" + jsonStr + ")");alert(jsonObj.IfSuccess);alert(jsonObj.Message);</script>
</body>
</html>

谢谢浏览!

转载于:https://www.cnblogs.com/Music/archive/2011/01/08/filter-invalid-char-on-json.html

过滤JSON中的特殊字符相关推荐

  1. jsoncpp去掉多余字符_如何处理JSON中的特殊字符

    JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值之间得以快速转换.由于 Ajax 应用程序非常适合将纯文本发送给服务器端程序并对应地接收纯文本,相 ...

  2. java处理json特殊字符_如何处理JSON中的特殊字符

    JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值之间得以快速转换.由于 Ajax 应用程序非常适合将纯文本发送给服务器端程序并对应地接收纯文本,相 ...

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

    JSon 数据中的String 传递数据时,需要处理好特殊字符 JSon数据中有特殊字符 1 :引号   如果是使用单引号,来括值的话,那String 中  '  单引号为特殊字符 2:正斜杠,反斜杠 ...

  4. 如何处理JSON中的特殊字符 介绍几种解决方案

    http://www.nowamagic.net/librarys/veda/detail/216JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值 ...

  5. 从mysql取出数据封装成json中遇到特殊字符自动转成unicode解决方案

    @Testpublic void xxx() throws ParseException, UnsupportedEncodingException, Exception {ArrayList< ...

  6. Ironport对邮件主题中包括特殊字符的过滤

    公司使用Ironport做为邮件网关已经有多年了,在今年又做了cluster模式,使公司的邮件系统更加稳定及搞高了可用性.Ironport集防毒与垃圾邮件过滤,同时可定制邮件接收及发送策略,可对邮件内 ...

  7. 通过IHttpHandlerFactory,过滤TextBox、Input和Textarea中的特殊字符

    通过IHttpHandlerFactory过滤特殊字符,可以做到和具体项目无关,部署起来也挺简单. using System; using System.Web.UI; using System.We ...

  8. 关于 android 中 edittext 特殊字符过滤和字符长度限制的最优方法

    关于 android 中 edittext 特殊字符过滤和字符长度限制的最优方法 1985 T.于星期四, 07/03/2013 - 20:36提交 在android开发中,经常会碰到edittext ...

  9. 图片加到json中,提交到服务器端处理异常问题。

    框架:phonegap. 利用phonegap 的plungin 取到图片数据 ,加到json中,利用jquery的ajax提交到服务器端, 在服务器端解析并保存图片.但打开图片时,出现图片已被破坏的 ...

最新文章

  1. 光立方原理讲解_一分钟讲解光模块原理与结构
  2. html基础代码笔记,HTML基础笔记
  3. Git与Repo入门
  4. 代码是写给人看的,请C/C++过来的程序员们多学习软件工程
  5. 使用Sublime text 3打造一个小巧但强大的Go语言开发IDE
  6. 一款全新的基于IntelliJ和ReSharper的跨平台.NET IDE
  7. leetcode113. 路径总和 II(dfs)
  8. 计算机桌面程序名,深度技术win7旗舰版电脑桌面图标只显示名称了怎么办
  9. 基于JAVA+SpringMVC+MYSQL的在线音乐网站
  10. Maven学习总结(12)——eclipse中构建多模块maven项目
  11. vac服务器未响应,win7玩csgo官方匹配提示vac无法验证您的游戏会话怎么办
  12. eclipse(Kepler Service Release 2)问题记录
  13. 三酷猫学python_python学习第6期
  14. Springboot实现filter拦截token验证和跨域
  15. css图片九宫格布局
  16. 永久关闭smartGit弹出“非商业用途”的30s界面
  17. 【转】三款免费的在线项目管理工具
  18. 初试百度vidpress一键生成视频
  19. (最新最详细)eclipse的preferences下没有Android首选项?
  20. post_thumbnail_html,WordPress 常用函数 / get_the_post_thumbnail

热门文章

  1. 前端学习(3348):数组方法的运用和数值
  2. 前端学习(3197):jsx语法规则1
  3. [html] 你知道什么是粘性布局吗?
  4. [html] 通过设置表单的target=“_blank“来下载文件会被浏览器拦截吗?如何解决?
  5. [html] 你知道短链接的生成原理吗?
  6. [css] 说说你对css的will-change属性的理解,它有什么作用呢?
  7. 工作331:uni-修改未完成数据动态渲染
  8. 工作312:uni-时间戳处理
  9. 前端学习(2839):swiper属性
  10. spring mvc学习(48):java判断系统是linux还是windows系统