首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

中文处理的有关问题.

2012-04-17 
中文处理的问题..D1A9D2B8CEDEC9F9雪夜无声msgboxhex2chr( D1A9D2B8CEDEC9F9 )就出问题了...PublicFunc

中文处理的问题..
D1   A9   D2   B8   CE   DE   C9   F9=雪夜无声
msgbox   hex2chr( "D1   A9   D2   B8   CE   DE   C9   F9 ")
就出问题了...

Public   Function   Hex2Chr(ByVal   HexStr   As   String)
Dim   sArr()   As   String
Dim   sArr2()   As   String
Dim   i   As   Long
Dim   X   As   Long
Dim   cal1     As   String
Dim   cal2   As   String
sArr()   =   Split(LTrim(HexStr),   "   ")
For   i   =   0   To   UBound(sArr())
cal1   =   cal1   &   "   "   &   HexToDec(sArr(i))
Next   i

sArr2()   =   Split(LTrim(cal1),   "   ")
For   X   =   0   To   UBound(sArr2())
cal2   =   cal2   &   ChrW(sArr2(X))
Next   X
Hex2Chr   =   cal2
End   Function

-   -|
如果hex有中文怎么版?

[解决办法]


Private Sub Command1_Click()
MsgBox Hex2String( "D1 A9 D2 B8 CE DE C9 F9 ")
End Sub


Private Function Hex2String(ByVal sHex As String, Optional bUnicode As Boolean)
Dim sByte As Variant
Dim byChar() As Byte
Dim i As Long
sHex = Replace(sHex, vbCrLf, " ")
sByte = Split(sHex, " ")
ReDim byChar(0 To UBound(sByte)) As Byte
For i = 0 To UBound(sByte)
byChar(i) = Val( "&h " & sByte(i))
Next
If bUnicode Then
Hex2String = byChar
Else
Hex2String = StrConv(byChar, vbUnicode)
End If
End Function

热点排行