blueskyjida 2016-05-24 03:27 采纳率: 0%
浏览 1213

webrowser访问网页问题

网址中含有中文参数,利用UTF8EncodeURI函数将中文转码为UTF8,将转好后的网址Navigate,

Dim myuri As Uri = New Uri("转好后的网址“)
webbrowser.Navigate(myuri)
访问完成后通过webbrowser.Url.OriginalString查询,网址又变成转码前的中文了,不知是为什么?怎么解决?

附:
Function UTF8EncodeURI(ByVal szInput) As String
Dim wch, uch, szRet
Dim x
Dim nAsc, nAsc2, nAsc3

    If szInput = "" Then
        UTF8EncodeURI = szInput
        Exit Function
    End If

    For x = 1 To Len(szInput)
        wch = Mid(szInput, x, 1)
        nAsc = AscW(wch)

        If nAsc < 0 Then nAsc = nAsc + 65536

        If (nAsc And &HFF80) = 0 Then
            szRet = szRet & wch
        Else
            If (nAsc And &HF000) = 0 Then
                uch = "%" & Hex(((nAsc \ 2 ^ 6)) Or &HC0) & Hex(nAsc And &H3F Or &H80)
                szRet = szRet & uch
            Else
                uch = "%" & Hex((nAsc \ 2 ^ 12) Or &HE0) & "%" & _
                Hex((nAsc \ 2 ^ 6) And &H3F Or &H80) & "%" & _
                Hex(nAsc And &H3F Or &H80)
                szRet = szRet & uch
            End If
        End If
    Next
    UTF8EncodeURI = szRet
    UTF8EncodeURI = UTF8EncodeURI.Replace("""", "%22")
End Function
  • 写回答

2条回答 默认 最新

  • blueskyjida 2016-05-25 03:17
    关注

    解决了,直接webbrowser.Navigate("转码后的网址“)即可成功!

    评论

报告相同问题?

悬赏问题

  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题