下面是一个显示所有全角半角的字体的查看例子
onclick=showUni(32,126)>
onclick=showUni(65281,65374)>
onclick=showUni(19968,40869)>
onclick=showUni(63744,64045)>
onclick=showUni(12353,12435)>
onclick=showUni(12449,12534)>
onclick=showUni(44032,55203)>
自定义: -
onclick=showUni(parseInt(document.all.min.value),parseInt(document.all.max.value))>
下面是一个查表(gb2312),转换gb2312到utf8的例子, 现在有iconv函数,这个已经没有太大的意义了,
function gb2utf8(gb){
if(!trim(gb)) return gb;
filename="gb2312.txt";
tmp=file(filename);
codetable=array();
while(list(key,value)=each(tmp))
codetable[hexdec(substr(value,0,6))]=substr(value,7,6);
utf8="";
while(gb) {
if (ord(substr(gb,0,1))>127) {
this=substr(gb,0,2);
gb=substr(gb,2,strlen(gb)-2);
utf8.=u2utf8(hexdec(codetable[hexdec(bin2hex(this))-0x8080]));
}else{
this=substr(gb,0,1);
gb=substr(gb,1,strlen(gb)-1);
utf8.=u2utf8(this);
}
}
return utf8;
}
function u2utf8(c){
str="";
if (c < 0x80) {
str.=c;
} else if (c < 0x800) {
str.=chr(0xC0 | c>>6);
str.=chr(0x80 | c & 0x3F);
} else if (c < 0x10000) {
str.=chr(0xE0 | c>>12);
str.=chr(0x80 | c>>6 & 0x3F);
str.=chr(0x80 | c & 0x3F);
} else if (c < 0x200000) {
str.=chr(0xF0 | c>>18);
str.=chr(0x80 | c>>12 & 0x3F);
str.=chr(0x80 | c>>6 & 0x3F);
str.=chr(0x80 | c & 0x3F);
}
return str;
}
?>