谁知道GBK编码转成punycode编码,MSDN上竟然没有这个东西。郁闷。。。

kkommcto 2005-11-23 08:54:56
谁知道GBK编码转成punycode编码,MSDN上竟然没有这个东西。郁闷。。。


MSDN上没有,也GOOGLE不到,但是我看到有人做出来了。

下面这个网站有 asp 代码,但是我看不懂。郁闷。。。
http://www.motobit.com/util/punycode-decoder-encoder.asp


在线等。
...全文
180 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
j9dai 2005-11-24
  • 打赏
  • 举报
回复
我长见识来着
kkommcto 2005-11-23
  • 打赏
  • 举报
回复
有人吗??
kkommcto 2005-11-23
  • 打赏
  • 举报
回复
这个是ASP,有些奇怪的代码看不懂,谁能把他转成。NET的。

Dim m_BA
Function BA
If IsEmpty(m_BA) Then Set m_BA = CreateObject("ScriptUtils.ByteArray"): m_BA.CharSet = "utf-8"
Set BA = m_BA
End Function

'conversion from unicode string to punycode
Function ToPUNYCODE(Data)
Dim Outdata
BA.String = Data

Outdata = "<div>ToPUNYCODE : Punycode representation of '" & _
Data & "' string :<div style=background-color:yellow;color:blue>"
Outdata = Outdata & "<b>" & BA.Punycode & "</b>"
Outdata = Outdata & "</div></div>"
ToPUNYCODE = Outdata
End Function

'conversion from punycode string (OLE String) to a UNICODE string
Function FromPUNYCODE(Data)
Dim Outdata
On Error Resume Next
BA.Punycode = Data
If Err=0 Then
Outdata = "<div>FromPUNYCODE : Unicode string :<div style=background-color:yellow;color:blue>"
Outdata = Outdata & "<b>" & BA.String & "</b>"'write the UTF representation
Outdata = Outdata & "</div></div>"
Else
Outdata = "<div style=background-color:red;color:yellow>FromPUNYCODE:Punycode string '" & _
Data & "' has no unicode representation.</div>"
End If
FromPUNYCODE = Outdata
End Function

'conversion of a host name (www.anychar.com) to a punycode idn version (www.xn--translated.com)
Function ToIDN(Data)
Dim Outdata, pData, partuni, partpuny

pData = Split(Data, ".")

For Each partuni In pData
BA.String = partuni
partpuny = BA.Punycode
If Right(partpuny,1)<>"-" Then partpuny = "xn--" & partpuny Else partpuny = partuni

Outdata = Outdata & partpuny & "."
Next
Outdata = Left(Outdata, Len(Outdata)-1)
ToIDN = "<div>ToIDN : IDN representation of '" & _
Data & "' string :<div style=background-color:yellow;color:blue><b>" & _
Outdata & "</b></div></div>"
End Function

'conversion of a host name in idn punycode (www.xn--translated.com)
' to an unicode string (www.anychar.com)
Function FromIDN(ByVal Data)
Dim Outdata, pData, partuni, partpuny
Data = LCase(Data)
pData = Split(Data, ".")
For Each partpuny In pData
If Left(partpuny,4)="xn--" Then
BA.Punycode = Mid(partpuny, 5)
partuni = Ba.String
Else
'on error resume next
'BA.Punycode = partpuny
Dim re :set re = New RegExp
re.pattern = "^[-a-zA-Z0-9]+$"

If re.Test(partpuny) Then
partuni = partpuny
Else
partuni = "<font Color=red>error (" & partpuny & ")</Font>"
End If
End If

Outdata = Outdata & partuni & "."
Next
Outdata = Left(Outdata, Len(Outdata)-1)
FromIDN = "<div>FromIDN : Unicode representation of IDN '" & Data & _
"' :<div style=background-color:yellow;color:blue><b>" & _
Outdata & "</b></div></div>"
End Function
kkommcto 2005-11-23
  • 打赏
  • 举报
回复
TO: hainang1234(鼠·神·泪)

http://www.cnnic.cn/html/Dir/2003/10/29/1112.htm
hainang1234 2005-11-23
  • 打赏
  • 举报
回复
GBK即是GB2312扩展。
后面那个编码我没见过。

680

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder API 调用
社区管理员
  • API 调用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧