&#x是什么编码以及转换方法(GB2312 UNICODE)

常在一些网站源码中看到&#x开头的内容,这是转化成unicode编码后的汉字,我找到了一种将这种编码转换成汉字的方法,记录在这里以便有人使用。将下面的代码复制出来保存成html格式,使用浏览器打开就可以使用了。

<html>
<head>
<title>GB2312 UNICODE转换工具</title>
<div align=center>
<center>
<table border=0 cellpadding=0 cellspacing=0 style="border-collapse: collapse" width=600 id=AutoNumber1 height=26>
  <tr>
    <td width=100% height=26>
    <p align=center><font face=黑体 size=5 color=#FF0000>GB2312 UNICODE 转换工具</font></p>
    <p>使用方法:</p>
    <p>  在下面的文本框中输入中文文字,按“TO UNICODE”,即可将其转化为UNICODE字符。</p>
    <p>  再按“TO GB2312”,即可将其还原为简体中文。</td>
  </tr>
</table>
</center>
</div>
<p align=center>
<textarea cols=82 rows=10 id=code>
</textarea> </p>
<p align=center>

<input type=button onclick=encode(code,this) value="TO UNICODE">
<script>
var mode="zhuan";
function encode(obj,btn){
   if(mode=="zhuan"){
       obj.value=obj.value.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")});
       btn.value="TO GB2312";
       mode="huan";
   }else{
       obj.value=unescape(obj.value.replace(/&#x/g,'%u').replace(/;/g,''));
       btn.value="TO UNICODE";
       mode="zhuan";
   }
}
</script></p>
</body></html>

当然还有一种,以&#后接十进制数字,&#x后接十六进制数字,见知乎: &#x开头的是什么编码呢。浏览器可以解释它。如&#20013;&#22269;等同与中文"中国"?

你可能感兴趣的:(html,unicode,编码)