建站极客
网络编程 ASP编程 正文
utf-8编码转换成gb2312
所属分类:
网络编程 / ASP编程
阅读数:
843
收藏 0
赞 0
分享
[code]<script> function chinesefromutf8url(strutf8) { var bstr = ""; var noffset = 0; // processing point on strutf8 if( strutf8 == "" ) return ""; strutf8 = strutf8.tolowercase(); noffset = strutf8.indexof("%e"); if( noffset == -1 ) return strutf8; while( noffset != -1 ) { bstr += strutf8.substr(0, noffset); strutf8 = strutf8.substr(noffset, strutf8.length - noffset); if( strutf8 == "" ¦ ¦ strutf8.length < 9 ) // bad string return bstr; bstr += utf8codetochinesechar(strutf8.substr(0, 9)); strutf8 = strutf8.substr(9, strutf8.length - 9); noffset = strutf8.indexof("%e"); } return bstr + strutf8; } function unicodefromutf8(strutf8) { var bstr = ""; var ntotalchars = strutf8.length; // total chars to be processed. var noffset = 0; // processing point on strutf8 var nremainingbytes = ntotalchars; // how many bytes left to be converted var noutputposition = 0; var icode, icode1, icode2; // the value of the unicode. while (noffset < ntotalchars) { icode = strutf8.charcodeat(noffset); if ((icode & 0x80) == 0) // 1 byte. { if ( nremainingbytes < 1 ) // not enough data break; bstr += string.fromcharcode(icode & 0x7f); noffset ++; nremainingbytes -= 1; } else if ((icode & 0xe0) == 0xc0) // 2 bytes { icode1 = strutf8.charcodeat(noffset + 1); if ( nremainingbytes < 2 ¦ ¦ // not enough data (icode1 & 0xc0) != 0x80 ) // invalid pattern { break; } bstr += string.fromcharcode(((icode & 0x3f) << 6) ¦ ( icode1 & 0x3f)); noffset += 2; nremainingbytes -= 2; } else if ((icode & 0xf0) == 0xe0) // 3 bytes { icode1 = strutf8.charcodeat(noffset + 1); icode2 = strutf8.charcodeat(noffset + 2); if ( nremainingbytes < 3 ¦ ¦ // not enough data (icode1 & 0xc0) != 0x80 ¦ ¦ // invalid pattern (icode2 & 0xc0) != 0x80 ) { break; } bstr += string.fromcharcode(((icode & 0x0f) << 12) ¦ ((icode1 & 0x3f) << 6) ¦ (icode2 & 0x3f)); noffset += 3; nremainingbytes -= 3; } else // 4 or more bytes -- unsupported break; } if (nremainingbytes != 0) { // bad utf8 string. return ""; } return bstr; } function utf8codetochinesechar(strutf8) { var icode, icode1, icode2; icode = parseint("0x" + strutf8.substr(1, 2)); icode1 = parseint("0x" + strutf8.substr(4, 2)); icode2 = parseint("0x" + strutf8.substr(7, 2)); return string.fromcharcode(((icode & 0x0f) << 12) ¦ ((icode1 & 0x3f) << 6) ¦ (icode2 & 0x3f)); } alert(chinesefromutf8url("%e6%b5%8b%e8%af%95")) </script>[code]
ASP编码和解码函数详解 这篇文章主要介绍了ASP编码和解码函数的相关资料,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
ASP显示页面执行时间的方法 这篇文章主要介绍了ASP显示页面执行时间的方法,在本地测试一下输出页面需要多少时间,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
ASP基础入门第一篇(ASP技术简介) 本文将以 Active Server Pages 为中心,向你全面展示制作动态商业网站的步骤和技巧并通过大量的实例,让你在不断的理论和实践之中笑傲“网络”……
评论 0
收藏 0
赞 0
分享
ASP基础入门第二篇(ASP基础知识) 这篇文章是ASP基础入门第二篇,第一篇展示了ASP动态网站设计的一些最基本的方法,相信通过实践各位对 ASP 已经有了最基本的了解,本文将进一步介绍ASP动态网站的一些基本技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
ASP基础入门第三篇(ASP脚本基础) 通过前两篇的学习,相信各位已经对 ASP 的动态网站设计有了一个基本的概念和整体的印象。从本篇开始作者将从脚本语言的使用着手,由浅入深地带领大家探索 ASP 动态网站设计的真正奥秘。
评论 0
收藏 0
赞 0
分享
ASP基础入门第五篇(ASP脚本循环语句) 在本文上两篇中,我们学习了脚本语言 VBScript 的变量、函数、过程和条件语句,本篇将继续给大家介绍 VBScipt 的循环语句,并对脚本语言在 ASP 中的应用加以总结。
评论 0
收藏 0
赞 0
分享
查看更多