<script type="text/javascript">
var to16 = { on : function (str) {
var a = [], i = 0;
for (; i < str.length ;) a[i] = ("00" + str.charCodeAt(i ++).toString(16)).slice(-4);
return "\\u" + a.join("\\u");
},
un : function (str) {
return unescape(str.replace(/\\/g, "%"));
}
};
var str = to16.on("国");
var str2 = to16.un("\u76c5\u56fd ");
document.write(str+"<br/>");
document.write(str2+"<br/>");
</script>
已找到了转换的代码了,但有个问题我需要转换汉字,我怎么将指定的文本中是只找出汉字的出来转换
var to16 = { on : function (str) {
var a = [], i = 0;
for (; i < str.length ;) a[i] = ("00" + str.charCodeAt(i ++).toString(16)).slice(-4);
return "\\u" + a.join("\\u");
},
un : function (str) {
return unescape(str.replace(/\\/g, "%"));
}
};
var str = to16.on("国");
var str2 = to16.un("\u76c5\u56fd ");
document.write(str+"<br/>");
document.write(str2+"<br/>");
</script>
已找到了转换的代码了,但有个问题我需要转换汉字,我怎么将指定的文本中是只找出汉字的出来转换
/// <summary>
/// 对中文进行编码
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
private string escape(string value)
{
StringBuilder sb = new StringBuilder();
byte[] ba = System.Text.Encoding.Unicode.GetBytes(value);
for (int i = 0; i < ba.Length; i += 2)
{
sb.Append("%u");
sb.Append(ba[i + 1].ToString("X2"));
sb.Append(ba[i].ToString("X2"));
}
return sb.ToString();
}
这个方法去处理,页面JS有解码的方法
通过正则进行替换,如:
<script type="text/javascript">
var to16 = {
on : function (str) {
var a = [], i = 0;
for (; i < str.length ;) a[i] = ("00" + str.charCodeAt(i ++).toString(16)).slice(-4);
return "\\u" + a.join("\\u");
},
un : function (str) {
return unescape(str.replace(/\\/g, "%"));
}
};var x = 'http://www.jslab.org.cn中出现的中文';var y = x.replace(/([^\x00-\xff])/ig,function(a,b){return (b)?to16.on(b):''});alert(y);alert(to16.un(y));
</script>