问题是这样的,我发现如果路径中含有中文,那么浏览器是会自动转成16进制编码(这是废话),关键是我发现在IE的缓存里存放的时候,那段中文虽然也是经过编码的,但是好像内容不太一样,我们就拿QQ杂志里的一个封面来说...网址如下http://mag.qq.com/mag/mag721_intro.shtml这是女友杂志的简介,上面有个封面叫 "LargeCover.jpg" 地址如下http://truemag.qq.com/ebook/magazine/nvyou/nvyou/女友_10014209_20041115/thumbnails/LargeCover.jpg"女友"经过编码后是 C5%AE%D3%D1 也就是下面这个地址http://truemag.qq.com/ebook/magazine/nvyou/nvyou/%C5%AE%D3%D1_10014209_20041115/thumbnails/LargeCover.jpg而我去缓存里(Win2003系统 X:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files)发现,里面显示的竟然是下面这个地址http://truemag.qq.com/ebook/magazine/nvyou/nvyou/%E5%A5%B3%E5%8F%8B_10014209_20041115/thumbnails/LargeCover.jpg如果用网际快车,上面三个地址都可以把 LargeCover.jpg 这个文件下回来,(我用浏览器有时候可以有时候不行)我从网上找了个可以显示网页文件在缓存里的路径的工具看(http://host2.94888.net/flywolf/talent/GetURLlocalFileName.rar)用网际快车下
,只有最后一个地址可以看到...前面两个都不可以....
我现在想直接得到缓存路径里的编码 %E5%A5%B3%E5%8F%8B  不知道有没有人能实现呀....谢谢了~~~~~

解决方案 »

  1.   

    补充一下,我最终想要的效果就是要把 "女友" 转换成 %E5%A5%B3%E5%8F%8B因为我想要从缓存里保存这幅图片
    http://truemag.qq.com/ebook/magazine/nvyou/nvyou/女友_10014209_20041115/Level_001/0001_0000_0000.jpg此图片只能用网际快车下载....不知道为什么~~~~
      

  2.   

    Function GetUTF8(HZ As String) As String
        Dim tmp As String
        tmp = Format(ToBin(AscW(HZ)), String(16, "0"))
        GetUTF8 = "1110" & Left(tmp, 4) & "10"
        GetUTF8 = GetUTF8 & Mid(tmp, 5, 6) & "10" & Right(tmp, 6)
        tmp = Hex(ToDec(GetUTF8))
        GetUTF8 = tmp
    End FunctionFunction ToBin(Num As Long) As String
        Do
            ToBin = Num Mod 2 & ToBin
            Num = Num \ 2
        Loop While Num
    End FunctionFunction ToDec(BinStr As String) As Long
        Dim i As Long
        For i = 1 To Len(BinStr)
            ToDec = ToDec * 2 + CLng(Mid(BinStr, i, 1))
        Next i
    End FunctionPrivate Sub Form_Load()
        MsgBox GetUTF8("女")
        MsgBox GetUTF8("友")
    End Sub
      

  3.   

    BlueBeer(1win) 问题解决,你要到哪里领分(200)??
      

  4.   

    还应该补充一点...上面那个程序在处理 "脑" 这个字的时候,ASCW返回的是一个负数,所以在Function ToBin(Num As Long)里应该加一句,if num<0 then num=num+65536 就不会出错了,吼吼...