`
zhangyaochun
  • 浏览: 2620867 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

关于字符串的编码和解码

阅读更多

有的时候我们需要对目标字符串中的”<“|">"等进行编码或者解码。比如搜索功能附带导致的xss攻击。

 

1、我们先看看prototype 1.6.0

 

注意:这个的api不对"和’进行编码

 

escapeHTML:function(){
    var self = arguments.callee;
    self.text.data = this;
    return self.div.innerHTML;
}

/*内部依赖比较多啊*/
unescapeHTML:function(){
    var div = new Element('div');
    //调用stripTags 去掉html标签
    div.innerHTML = this.stripTags();
    return div.childNodes[0] ? (div.childNodes.length > 1 ?
      $A(div.childNodes).inject('', function(memo, node) { return memo+node.nodeValue }) :
      div.childNodes[0].nodeValue) : '';
}
 

 

 

2、下方展示的是参照tangram的对5种字符进行编码---- :&<>"'

 

 

/*
encodeHTML --对目标字符串进行html编码
*@function*
*@param {String} source*
*@return {String} html编码后的字符串* ----对&<>"'进行编码
*/
ZYC.string.encodeHTML = function(source){
    return String(source).replace(/&/g,'&amp;')
	                     .replace(/</g,'&lt;')
						 .replace(/>/g,'&gt;')
						 .replace(/"/g,'&quot;')
						 .replace(/'/g,'&#39;');
};

/*
decodeHTML --对目标字符串进行html解码
*@function*
*@param {String} source*
*@return {String} html解码后的字符串* 
*/
ZYC.string.decodeHTML = function(source){
    var str = String(source).replace(/&amp;/g,'&')
	                     .replace(/&lt;/g,'<')
						 .replace(/&gt;/g,'>')
						 .replace(/&quot;/g,'"');
    return str.replace(/&#([\d]+);/g,function(_0,_1){
	    return String.formCharCode(parseInt(_1,10));
	});
};
 

 

分享到:
评论

相关推荐

    字符串编码与解码

    用于对字符串进行编码和解码,只需要输出字符串或者编码后的文件便可以实现操作。

    js对中文字符串进行gb2312编码解码

    在处理中文字符串时,确保正确设置浏览器和服务器的编码也是非常重要的。在HTML文件中,可以通过`&lt;meta charset="UTF-8"&gt;`来指定页面的编码,同时在发送和接收数据时,确保服务器也使用了正确的编码。 总结一下,...

    java使用URLDecoder和URLEncoder对中文字符进行编码和解码

    这两个类位于`java.net`包下,可以帮助开发者进行字符串编码和解码,确保数据在网络传输过程中的正确性。 `URLEncoder`类提供了`encode`静态方法,用于将普通字符串编码成`application/x-www-form-urlencoded` MIME...

    Base64文本字符串解码编码双向解析转换工具

    在这个特殊的场景下,我们讨论的是一个专门针对文本字符串的Base64编码和解码工具,而非处理整个文件。 Base64编码的原理是将每3个字节(24位)的数据分为4个6位的块,每个6位块对应Base64字符集中的一个字符。Base...

    Base64文本字符串编码解码加密解密双向解析工具

    在描述中提到,此工具专注于处理文本和字符串的Base64编码和解码,而不是通常针对文件和图片的应用。在处理文本时,首先需要将文本转换为字节序列,通常是根据指定的字符编码进行,比如UTF-8。UTF-8是一种非常常见的...

    字符串和base64的编码与解码

    当需要将字符串编码为Base64时,通常先将字符串按照特定字符集转换为字节序列,然后按照Base64规则进行编码。 编码过程大致如下: 1. 将字符串按选定的字符编码(如UTF-8)转换成字节数组。 2. 将字节数组按照每3个...

    UnicodeCode编码转换成字符串编码的C#类

    UnicodeCode编码转换成字符串编码的C#类 \uA054\uA055 =&gt; "中文

    一个判断字符串编码类型的类,支持多种编码

    例如,`Encoding.GetEncoding`方法可以创建一个特定编码的Encoding对象,而`Encoding.GetString`和`Encoding.GetBytes`则分别用于将字节序列解码为字符串和将字符串编码为字节序列。 这个`IdentifyEncoding`类可能...

    字符编码解码工具字符编码,解码

    `encode()`函数用于将字符串编码为字节,而`decode()`函数则用于将字节解码为字符串。在Java中,`java.nio.charset`包提供了类似的函数,如`CharsetEncoder`和`CharsetDecoder`。 字符编码解码工具的设计往往注重...

    java获取字符串编码类型代码(导入直接查看结果)

    上述代码会遍历Java支持的所有字符集,并尝试将字符串编码和解码,如果编码和解码后的内容一致,那么这个编码就可能是字符串的原始编码。然而,这种方法并不总是准确,因为可能存在多个编码方式都能正确表示相同的...

    Huffman编码和解码的C语言实现

    ### Huffman编码和解码的C语言实现 #### 引言 随着信息技术的快速发展,数据量呈爆炸式增长,这对存储设备的容量、通信线路的带宽以及计算机的处理能力提出了更高要求。在这种背景下,数据压缩技术变得尤为重要。...

    对字符串进行哈夫曼编码和解码

    通过查询文件中的字符以及各个字符的权值(出现次数),对某个字符串进行哈夫曼编码和解码,代码则会通过生成哈夫曼二叉树计算出各个字符的编码,存在一个文件中,这时输入要编码的字符串就可以得到其哈夫曼编码,还...

    base64、DES、AES、SHA-1、MD5 字符串加密和解密 编码和解码 大全

    这个进行字符串加密 和解密 , 编码和 解码 包括(base64、DES、AES、SHA-1、MD5 ) ,都是亲测的,保证可用 这个进行字符串加密 和解密 , 编码和 解码 包括(base64、DES、AES、SHA-1、MD5 ) ,都是亲测的,保证...

    字符串的编码与解码使用JUnit

    使用JUnit测试字符串的编码与解码,里面包含UTF8(英文) 和UTF16(中文)的编码与解码

    js对图片base64编码字符串进行解码并输出图像示例

    Base64是一种用于将二进制数据编码为ASCII字符串的编码方式,它在传输或存储非文本数据时非常有用,例如图片。 在HTML文档中,`&lt;img&gt;`标签通常用于展示图像,但在这里,我们将通过JavaScript来实现这一功能。首先,...

    16进制转字符串,URL解码

    在IT领域,16进制(Hexadecimal)与字符串之间的转换以及URL编码和解码是常见的数据处理操作。这些操作通常涉及到数据传输、网络通信、编程语言中的数据表示以及文本处理等多个方面。以下是对这两个主题的详细解释:...

    C#中的编码和解码是如何实现的

    在C#中,编码和解码是处理字符串和字节序列之间转换的常见操作。这些操作通常涉及到字符集编码,如UTF-8、ASCII、GB2312等。以下是一些在C#中实现编码和解码的方法和最佳实践。 C#提供了强大的编码和解码功能,使得...

    java字符串编码转换

    ### Java字符串编码转换详解 #### 一、Java 字符串编码转换基础 在Java中,字符串的处理是非常常见的操作之一,而字符编码是确保数据正确显示的关键因素。本篇文章将重点介绍Java中字符串编码的转换方法及其在Web...

    【C++】根据输入的字符串生成哈夫曼树, 并进行哈夫曼编码和解码

    /********************************************************************** * Description : create huffmanTree and huffmanCode by input string * and decode a 0、1 sequence by huffmanCode ...

    CTF-字符串编码识别工具,网络安全CTF比赛的好帮手!

    在解决这类问题时,常常会遇到不同格式和类型的字符串编码,因此拥有一个强大的字符串编码识别工具,如“BigEye”,可以帮助参赛者更快更准确地解析和解码信息。 “BigEye”作为一个字符串编码识别工具,其主要功能...

Global site tag (gtag.js) - Google Analytics