更多相关内容...>>ASP字符转换:UTF-8与GB2312互转
ASP字符转换:UTF-8与GB2312互转
UTF-8转GB2312函数
a544iU http://blog.numino.net/
<%
qs6qNK http://blog.numino.net/
'用途:將UTF-8編碼漢字轉換為GB2312碼,兼容英文和數字
CFY8MW http://blog.numino.net/
'版權:雖說是原創,其實也參考了別人的部分算法
zUnUGL http://blog.numino.net/
'用法:Response.write UTF2GB("%E9%83%BD%E5%B8%82%E6%83%85%E7%B7%A3 %E6%98%9F%E5%BA%A7")
S6mPym http://blog.numino.net/
function UTF2GB(UTFStr)
93Gi5Y http://blog.numino.net/
for Dig=1 to len(UTFStr)
JPO0SD http://blog.numino.net/
if mid(UTFStr,Dig,1)="%" then
2Bm642 http://blog.numino.net/
if len(UTFStr) >= Dig+8 then
0XIlnI http://blog.numino.net/
GBStr=GBStr & ConvChinese(mid(UTFStr,Dig,9))
R4cghf http://blog.numino.net/
Dig=Dig+8
QryuCj http://blog.numino.net/
else
w13OCl http://blog.numino.net/
GBStr=GBStr & mid(UTFStr,Dig,1)
8O9tCg http://blog.numino.net/
end if
5V5sfq http://blog.numino.net/
else
H6IfCL http://blog.numino.net/
GBStr=GBStr & mid(UTFStr,Dig,1)
izPy0K http://blog.numino.net/
end if
m9gO2R http://blog.numino.net/
next
21Dmbf http://blog.numino.net/
UTF2GB=GBStr
Rsl96h http://blog.numino.net/
end function
XGxzKV http://blog.numino.net/
function ConvChinese(x)
Akd1eU http://blog.numino.net/
A=split(mid(x,2),"%")
r9xGQ9 http://blog.numino.net/
i=0
nffF4k http://blog.numino.net/
j=0
3WJwHH http://blog.numino.net/
for i=0 to ubound(A)
UM65Va http://blog.numino.net/
A(i)=c16to2(A(i))
960G14 http://blog.numino.net/
next
Nu7Vz6 http://blog.numino.net/
for i=0 to ubound(A)-1
CC1p0S http://blog.numino.net/
DigS=instr(A(i),"0")
fpkU1n http://blog.numino.net/
Unicode=""
1tBK41 http://blog.numino.net/
for j=1 to DigS-1
5LGZ2T http://blog.numino.net/
if j=1 then
6zhX5t http://blog.numino.net/
A(i)=right(A(i),len(A(i))-DigS)
83JXKu http://blog.numino.net/
Unicode=Unicode & A(i)
fLdLAv http://blog.numino.net/
else
tGa05j http://blog.numino.net/
i=i+1
U3AdF0 http://blog.numino.net/
A(i)=right(A(i),len(A(i))-2)
RXf2Qn http://blog.numino.net/
Unicode=Unicode & A(i)
0cK1JG http://blog.numino.net/
end if
56Wc84 http://blog.numino.net/
next
ycOLN5 http://blog.numino.net/
if len(c2to16(Unicode))=4 then
K3cMAY http://blog.numino.net/
ConvChinese=ConvChinese & chrw(int("&H" & c2to16(Unicode)))
6XZPTd http://blog.numino.net/
else
QQcuiM http://blog.numino.net/
ConvChinese=ConvChinese & chr(int("&H" & c2to16(Unicode)))
mxs69b http://blog.numino.net/
end if
wf5GTx http://blog.numino.net/
next
9RKReN http://blog.numino.net/
end function
ZMPJgb http://blog.numino.net/
function c2to16(x)
S6MAsh http://blog.numino.net/
i=1
iqSX67 http://blog.numino.net/
for i=1 to len(x) step 4
ls60qs http://blog.numino.net/
c2to16=c2to16 & hex(c2to10(mid(x,i,4)))
ch5Mjn http://blog.numino.net/
next
yeUnVo http://blog.numino.net/
end function
h717Wh http://blog.numino.net/
function c2to10(x)
F3Pi8X http://blog.numino.net/
c2to10=0
V8BgTg http://blog.numino.net/
if x="0" then exit function
9Qf2sA http://blog.numino.net/
i=0
14rREc http://blog.numino.net/
for i= 0 to len(x) -1
y34H58 http://blog.numino.net/
if mid(x,len(x)-i,1)="1" then c2to10=c2to10+2^(i)
XF1vqE http://blog.numino.net/
next
oD28oi http://blog.numino.net/
end function
fKDCi0 http://blog.numino.net/
function c16to2(x)
N4ns9d http://blog.numino.net/
i=0
K3jIJJ http://blog.numino.net/
for i=1 to len(trim(x))
YHEVjB http://blog.numino.net/
tempstr= c10to2(cint(int("&h" & mid(x,i,1))))
SkkNtn http://blog.numino.net/
do while len(tempstr)<4
jA23zR http://blog.numino.net/
tempstr="0" & tempstr
6Gm5Ru http://blog.numino.net/
loop
kfhBY5 http://blog.numino.net/
c16to2=c16to2 & tempstr
1H09Bt http://blog.numino.net/
next
xdGT3p http://blog.numino.net/
end function
HY26yh http://blog.numino.net/
function c10to2(x)
ykB9wT http://blog.numino.net/
mysign=sgn(x)
UrN9Mi http://blog.numino.net/
x=abs(x)
rQAr7a http://blog.numino.net/
DigS=1
T2SS8C http://blog.numino.net/
do
66j417 http://blog.numino.net/
if x<2^DigS then
VLlcNI http://blog.numino.net/
exit do
zvQGqV http://blog.numino.net/
else
r6iMKa http://blog.numino.net/
DigS=DigS+1
272Tu2 http://blog.numino.net/
end if
zdswtF http://blog.numino.net/
loop
IMd1eF http://blog.numino.net/
tempnum=x
IBB5Sm http://blog.numino.net/
i=0
MuGMEk http://blog.numino.net/
for i=DigS to 1 step-1
7W752L http://blog.numino.net/
if tempnum>=2^(i-1) then
gT5D9X http://blog.numino.net/
tempnum=tempnum-2^(i-1)
zLMg9R http://blog.numino.net/
c10to2=c10to2 & "1"
H77OwH http://blog.numino.net/
else
RQkG85 http://blog.numino.net/
c10to2=c10to2 & "0"
yvFAlm http://blog.numino.net/
end if
0VCpXn http://blog.numino.net/
next
03vhT4 http://blog.numino.net/
if mysign=-1 then c10to2="-" & c10to2
IA6C2u http://blog.numino.net/
end function
tdB8Sa http://blog.numino.net/
%>
NsiPHs http://blog.numino.net/
-----------------------------------------------------------------------------------------------------------------------------
Q3hhLA http://blog.numino.net/
ASP编码转换函数GB2312转换UTF-8
231wuB http://blog.numino.net/
<%
KAZFzy http://blog.numino.net/
Function chinese2unicode(Str)
5chh9s http://blog.numino.net/
dim i
Q00fqE http://blog.numino.net/
dim Str_one
4EbeoT http://blog.numino.net/
dim Str_unicode
ih8r6X http://blog.numino.net/
For i=1 to len(Str)
hSqEZ3 http://blog.numino.net/
Str_one=Mid(Str,i,1)
hMWv58 http://blog.numino.net/
Str_unicode=Str_unicode&chr(38)
f1577k http://blog.numino.net/
Str_unicode=Str_unicode&chr(35)
90roqO http://blog.numino.net/
Str_unicode=Str_unicode&chr(120)
QQ9bm5 http://blog.numino.net/
Str_unicode=Str_unicode& Hex(ascw(Str_one))
Sv5FXt http://blog.numino.net/
Str_unicode=Str_unicode&chr(59)
AF9MFJ http://blog.numino.net/
Next
LbB6bb http://blog.numino.net/
chinese2unicode = Str_unicode
543I91 http://blog.numino.net/
End Function
4mJk4u http://blog.numino.net/
Response.Write ("<style type='text/css'>body,td,textarea,fieldset,input,button{font-size:12px;background-color: #D4D0C8;color: #5B5B5B;}a{color:#5B5B5B;}textarea{SCROLLBAR-HIGHLIGHT-COLOR: #D4D0C8;color: #808080;background-color: #D4D0C8;font-size: 12px;font-family: Verdana, Arial, Helvetica, sans-serif;SCROLLBAR-SHADOW-COLOR: #D4D0C8;SCROLLBAR-3DLIGHT-COLOR: #D4D0C8;SCROLLBAR-TRACK-COLOR: #D4D0C8;SCROLLBAR-ARROW-COLOR: #D4D0C8;SCROLLBAR-BASE-COLOR: #D4D0C8;SCROLLBAR-DARKSHADOW-COLOR: #D4D0C8;}.noinp {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 12px;color: #808080;border: 0px solid #ffffff;background-color: #D4D0C8;text-decoration: none;background-repeat: repeat;background-position: top;}.line {border-top-width: 0px;border-right-width: 0px;border-bottom-width: 1px;border-left-width: 0px;border-top-style: none;border-right-style: none;border-bottom-style: solid;border-left-style: none;border-bottom-color: #AAAAAA;}.xline {border-top-width: 0px;border-right-width: 0px;border-bottom-width: 1px;border-left-width: 0px;border-top-style: none;border-right-style: none;border-bottom-style: dotted;border-left-style: none;border-bottom-color: #BBBBBB;}</style>")& vbCrlf& vbCrlf& vbCrlf
Dq8En2 http://blog.numino.net/
Response.Write ("<body onload=""document.form1.a.focus();"">")& vbCrlf
2zbye4 http://blog.numino.net/
action = Request.QueryString("action")
2V12el http://blog.numino.net/
Select Case action
3Vvw0d http://blog.numino.net/
Case "do"
fRKSEV http://blog.numino.net/
Call doing()
bA1o7Z http://blog.numino.net/
Case else
mFxRoJ http://blog.numino.net/
Call mains()
bnLElE http://blog.numino.net/
End Select
IiEoCR http://blog.numino.net/
'-----------------------------
wPY9tW http://blog.numino.net/
Sub mains()
F6azMN http://blog.numino.net/
Response.write "<fieldset style=""width:60%"" align=""center""><legend>Gb2312 - Utf-8</legend>"& vbCrlf
EAp608 http://blog.numino.net/
Response.Write ("<form name=""form1"" method=post action='?action=do'><div align=center>")& vbCrlf
9jp7MX http://blog.numino.net/
Response.Write ("<textarea name='a' style='width:99%' rows='8' onkeyup=""document.form1.submit();"" onafterpaste=""document.form1.submit();""></textarea></div><br>")& vbCrlf
BKHFRo http://blog.numino.net/
Response.Write ("<div align=center><textarea id='b' style='width:99%' rows='8'></textarea><br></div>")& vbCrlf
p659bs http://blog.numino.net/
Response.Write ("<br> <input type='submit' value='开始转换'></form></fieldset>")& vbCrlf
KtPnns http://blog.numino.net/
End Sub
X46ce2 http://blog.numino.net/
'-----------------------------
6rJfES http://blog.numino.net/
Sub doing()
8u166Q http://blog.numino.net/
Response.write "<fieldset style=""width:60%"" align=""center""><legend>Gb2312 - Utf-8</legend>"& vbCrlf
0r6mZe http://blog.numino.net/
Response.Write ("<form name=""form1"" method=post action='?action=do'><div align=center>")& vbCrlf
3EuG7H http://blog.numino.net/
Response.Write ("<textarea name='a' style='width:99%' rows='8' onkeyup=""document.form1.submit();"" onafterpaste=""document.form1.submit();"">"&Request.Form("a")&"</textarea></div><br>")& vbCrlf
vDt13l http://blog.numino.net/
Response.Write ("<div align=center><textarea id='b' style='width:99%' rows='8' onmouseover=""if(this.value.length!=0){docopy()}"" onFocus=""if(this.value.length!=0){docopy()}""></textarea><br></div>")& vbCrlf
780pFA http://blog.numino.net/
Response.Write ("<br> <input type='submit' value='开始转换'></form></fieldset>")& vbCrlf
l37B6B http://blog.numino.net/
Response.Write ("<script>document.getElementById('b').innerHTML='"&server.htmlencode(chinese2unicode(Request.Form("a")))&"';")& vbCrlf
ss3zNK http://blog.numino.net/
Response.Write ("function docopy(){")& vbCrlf
iz6BYX http://blog.numino.net/
Response.Write ("document.getElementById('b').select();")& vbCrlf
MPE7EM http://blog.numino.net/
Response.Write ("js = document.getElementById('b').createTextRange();")& vbCrlf
U5eTUD http://blog.numino.net/
Response.Write ("js.execCommand('Copy');")& vbCrlf
dRDTq6 http://blog.numino.net/
Response.Write ("document.getElementById('a').value='';")& vbCrlf
bvQebe http://blog.numino.net/
Response.Write ("document.form1.submit();}")& vbCrlf
hrAaPf http://blog.numino.net/
Response.Write ("</script>")& vbCrlf
vPvzIN http://blog.numino.net/
End Sub
rIzzRi http://blog.numino.net/
%>
更多相关内容...>>ASP字符转换:UTF-8与GB2312互转

Bug报告 |  免责声明 |  联系我们 |  加入收藏

Copyright © 2006 NuminoStudio(www.numino.net) All Rights Reserved