`
shuzheng5201314
  • 浏览: 198618 次
  • 来自: 北京
社区版块
存档分类
最新评论

JSON中的特殊字符过滤

 
阅读更多

 

/// <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>
分享到:
评论

相关推荐

    Json Viewer编辑器

    很方便的查看、格式化、过滤特殊字符、编辑Json字符串。

    C# JSON通用转换类

    1. 过滤特殊字符 2. 格式化字符型、日期型、布尔型 3. List转换成Json 4. 对象转换为Json 5. 对象集合转换Json 6. 普通集合转换Json 7. DataSet转换为Json 8. Datatable转换为Json 9. DataReader转换为Json 10. 解析...

    JSON数据中存在单个转义字符“\”的处理方法

    2、若JSON数据中存在奇数个反斜杠时后台又不做处理的前提下,移动端可以过滤该特殊字符: 第一步:构建工具类: public class JSONEncodeUtil { /** * 将奇数个转义字符变为偶数个 * @param s * @return */ ...

    C#JSON操作类库项目ConvertJsonHelper.zip

    过滤特殊字符 格式化字符型、日期型、布尔型 List转换成Json 对象转换为Json 对象集合转换Json 普通集合转换Json DataSet转换为Json Datatable转换为Json DataReader转换为Json Datatable转换为Json 2 ...

    Aap.net过滤恶意参数提交(Application_BeginRequest事件

    Aap.net过滤恶意参数提交(Application_BeginRequest事件

    C#中的DataSet、string、DataTable、对象转换成Json的实现代码

    C#中对象,字符串,dataTable、DataReader、DataSet,对象... /// 过滤特殊字符 /// /// 字符串 /// &lt;returns&gt;json字符串 private static string String2Json(String s) { StringBuilder sb = new StringBuil

    解决spring boot请求包含非法字符问题 The valid characters are defined in RFC 7230 and RFC 3986 错误

    解决spring boot请求 java.lang.IllegalArgumentException: Invalid character found in the request target....新增一个配置类 设置tomcat请求路径包含“[]\” 等特殊字符不拦截 代码如下: @Configurati

    SQL注入漏洞全接触——高级篇.txt

    但如果碰到表名列名猜不到,或程序作者过滤了一些特殊字符,怎么提高注入的成功率?怎么样提高猜解效率?请大家接着往下看高级篇。 1.有些人会过滤Select、Update、Delete这些关键字,但偏偏忘记区分大小写,所以...

    asp.net中各种类型的JSON格式化

    代码如下: using System; using System.Collections.Generic;... public class ConvertJson { #region 私有方法 /// &lt;summary&gt; /// 过滤特殊字符 /// &lt;/summary&gt; private static string String2Json(String s) { Strin

    TextAnalyze:该存储库保存使用Java和Spark框架构建的API的代码库,以处理文本

    在“无糖”和“不”之类的单词中,我在单词的长度中包括特殊字符('或-)。 我考虑使用外部字典API来确定单词是否有效,因为我不想对用户的语言做任何假设。 如果该库专用于英语,则添加此功能将轻松过滤掉无效单词...

    speachless:敏感词检测, input text filter, sensitive words

    敏感词过滤 python3 测试过滤效果 python -m ... tar -x -C /project/xxx/speachless** 应该将以下对象 作为全局变量避免每次重新初始化 tree 造成额外开销 **** 当导入外部词库时, 应避免词库中存在特殊字符**sensit

    精通AngularJS part1

    从JavaScript代码中访问过滤器133 过滤器做什么与不做什么134 过滤器与DOM操作135 过滤器中代价高昂的数据变换136 不稳定的过滤器136 48摘要138 第5章创建高级表单139 51AngularJS表单与传统表单的比较139 ...

    jQuery权威指南366页完整版pdf和源码打包

    6.1.2 jquery中的load()方法 6.1.3 jquery中的全局函数getjson() 6.1.4 jquery中的全局函数getscript() 6.1.5 jquery中异步加载xml文档 6.2 请求服务器数据 6.2.1 $.get()请求数据 6.2.2 $....

    一个go语言实现的简单搜索引擎

    完全匹配的字符串(类似ID,ISBN等需要完全匹配的属性) 分词类型 (全文索引) 根据特殊标志符进行切分的模式 正排索引支持 数字索引(暂时只支持整数,需要自己将其他数转化成整数) 日期索引(目前支持2005-01-02 ...

    C# JsonHelper 操作辅助类,拿来直接用

    自定义查询对象转换动态类、object动态类转换json包、json转换object动态类、DataReader转换为Json、DataSet转换为Json、DataTable转成Json、Datatable转换为Json 、格式化字符型日期型布尔型、过滤特殊字符等 ...

    jquery-1.1.3 效率提高800%

    在 jQuery 1.2中,可以在URL参数中指定一个jQuery选择器,这会过滤返回的HTML文档,只取得文档中匹配选择器的元素。此语法类似于"url #some &gt; selector"。 实例 载入文档的sidebar的导航部分到一个无序列表...

    jQuery权威指南-源代码

    6.1.3 jQuery中的全局函数getJSON()/164 6.1.4 jQuery中的全局函数getScript()/166 6.1.5 jQuery中异步加载XML文档/168 6.2 请求服务器数据/170 6.2.1 $.get()请求数据/170 6.2.2 $.post()请求数据/172 6.2.3...

    超实用的jQuery代码段

    2.24 限制输入框仅接受特殊字符的输入 2.25 禁止页面内全部超链接 2.26 实现动态组合列表框 2.27 如何使用属性过滤器 2.28 如何测试某个元素是否可见 第3章 jQuery操作HTML事件 3.1 禁止或启用输入框 3.2 实时监听...

    Java面试宝典2020修订版V1.0.1.doc

    3、列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。 24 4、谈谈你的JS的理解? 24 5、ajax的优点? 25 6、简述一下ajax调试代码查找错误的方法? 26 7、简述ajax中Js脚本缓存问题该如何解决?...

    xheditor-1.1.14

    参数:可定义多个JSON对象数组,示例如下:{qq:{name:'QQ',count:55,width:25,height:25,line:11},msn:{name:'MSN',count:40,width:22,height:22,line:8}} name:表情分组名 count:表情数量 list:表情列表,例...

Global site tag (gtag.js) - Google Analytics