$html = %3c%3c%3cstr,vba - VB6 How to decode Chinese Characters with the HTML code - Stack Overflow

I need to decode the following text (just partial of it) and it consists of Chinese traditional characters. I have tried some decoding code but it doesn't work. After decoded, it turned out to be ????

PART OF THE Encoded Text:

%3Ctable%20width%3D%22100%25%22%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%3Ctd%3E%3Cp%20style%3D%22color%3A%23000000%3Bfont-size%3A20pt%3Btext-align%3Acenter%3Bfont-weight%3Abold%22%3E%0D%0A%09Genie%E7%93%B6%E4%B8%AD%E7%B2%BE%E9%9D%88%2010%25%E6%9D%8F%E4%BB%81%E9%85%B8%E4%BA%AE%E9%87%87%E7%85%A5%E8%86%9A%E7%B2%BE%E8%8F%AF%E6%B6%B2%20%E8%B2%B7%E4%B8%80%E9%80%81%E4%B8%80%0D%0A%3C%2Fp%3E%0D%0A%3C%2Ftd%3E%3C%2Ftr%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%3Ctd%3E%3Cp%20style%3D%22color%3A%23000000%3Bfont-size%3A12pt%3Btext-align%3Acenter%22%3E%0D%0A%09%20%0D%0A%3C%2Fp%3E%0D%0A%3C%2Ftd%3E%3C%2Ftr%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%3Ctd%3E%3Cdiv%20align%3D%22center%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fs.yimg.com%2Fwb%2Fimages%2F3C8EF489980779600D2E2A95C5BB2E0C15859F8B%22%20%2F%3E%3C%2Fdiv%3E%3C%2Ftd%3E%3C%2Ftr%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Ftable%3E%3Ctable%20width%3D%22100%25%22%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ctr%3E%3Ctd%3E%3Cp%20style%3D%22color%3A%23000000%3Bfont-size%3A12pt%3Btext-align%3Aleft%3Bfont-weight%3A100%22%3E%0D%0A%09%0D%0A%3C%2Fp%3E%0D%0A%3C%2Ftd

After DECODED: You can see the Chinese characters being decoded as ????

Genie???? 10???????? ????

Please help how to decode it properly.

Private Const CP_UTF8 As Long = 65001 ' UTF-8 Code Page

'Sys call to convert multiple byte chars to a char

Private Declare Function MultiByteToWideChar Lib "kernel32" ( _

ByVal CodePage As Long, _

ByVal dwFlags As Long, _

ByVal lpMultiByteStr As Long, _

ByVal cchMultiByte As Long, _

ByVal lpWideCharStr As Long, _

ByVal cchWideChar As Long) As Long

Private Function URL8Decode(ByVal URLEncoded As String) As String

On Error GoTo executeError

Dim ANSI() As Byte

Dim UTF8() As Byte

Dim I As Long

Dim B As Long

URLEncoded = Replace$(URLEncoded, "+", " ") 'Optional, plus-encoding isn't always used.

ANSI = StrConv(URLEncoded, vbFromUnicode)

ReDim UTF8(UBound(ANSI)) 'Estimate.

For I = 0 To UBound(ANSI)

If ANSI(I) = &H25 Then

UTF8(B) = FromHex(ANSI(I + 1)) * &H10 + FromHex(ANSI(I + 2)) 'Val("&H" & Mid$(URLEncoded, I + 2, 2))

I = I + 2

Else

UTF8(B) = ANSI(I)

End If

B = B + 1

Next

URL8Decode = FromUTF8(UTF8, B)

Exit Function

executeError:

LogProcess "ProductDetailFrm URL8Decode - [Err=" & Err.description & "]"

Resume 'HANG

End Function

Private Function FromHex(ByVal Char As Byte) As Byte

On Error GoTo executeError

If Char <= &H39 Then

FromHex = Char - &H30

Else

FromHex = Char - &H41 + &HA

End If

Exit Function

executeError:

LogProcess "ProductDetailFrm FromHex - [Err=" & Err.description & "]"

End Function

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值