龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp编程 >

asp 把UTF8转换GB2312代码

时间:2012-12-31 22:56来源:未知 作者:admin 点击:
分享到:
'个人代码风格注释(变量名中第一个小写字母表表示变量类型) 'i:为Integer型; 's:为String; Function U2UTF8(Byval a_iNum) Dim sResult,sUTF8 Dim iTemp,iHexNum,i iHexNum = Trim(a_iNum) If iHexNum = Then Exit Function


'个人代码风格注释(变量名中第一个小写字母表表示变量类型)
'i:为Integer型;
's:为String;
Function U2UTF8(Byval a_iNum)
Dim sResult,sUTF8
Dim iTemp,iHexNum,i

iHexNum = Trim(a_iNum)

If iHexNum = “” Then
Exit Function
End If

sResult = “”

If (iHexNum < 128) Then
sResult = sResult & iHexNum
ElseIf (iHexNum < 2048) Then
sResult = ChrB(&H80 + (iHexNum And &H3F))
iHexNum = iHexNum &H40
sResult = ChrB(&HC0 + (iHexNum And &H1F)) & sResult
ElseIf (iHexNum < 65536) Then
sResult = ChrB(&H80 + (iHexNum And &H3F))
iHexNum = iHexNum &H40
sResult = ChrB(&H80 + (iHexNum And &H3F)) & sResult
iHexNum = iHexNum &H40
sResult = ChrB(&HE0 + (iHexNum And &HF)) & sResult
End If

U2UTF8 = sResult
End Function

Function GB2UTF(Byval a_sStr)
Dim sGB,sResult,sTemp
Dim iLen,iUnicode,iTemp,i

sGB = Trim(a_sStr)
iLen = Len(sGB)
For i = 1 To iLen
sTemp = Mid(sGB,i,1)
iTemp = Asc(sTemp)

If (iTemp>127 OR iTemp<0) Then
iUnicode = AscW(sTemp)
If iUnicode<0 Then
iUnicode = iUnicode + 65536
End If
Else
iUnicode = iTemp
End If

sResult = sResult & U2UTF8(iUnicode)
Next

GB2UTF = sResult
End Function

'调用方法
Response.BinaryWrite(GB2UTF(“中国人”))


精彩图集

赞助商链接