runningwater 发表于 2008-7-18 12:34:17

URL中,对中文进行编码。

http://www.google.cn/search?q=%D6%D0%CE%C4

在类似的URL中,“中国”被编码成了“%D6%D0%CE%C4”,

请问如何对任意中文进行如上编码?

已解决问题里有一个:http://www.autoitx.com/forum.php?mod=viewthread&tid=1769&highlight=url
不过编码结果不一样。

[ 本帖最后由 runningwater 于 2008-7-28 08:44 编辑 ]

runningwater 发表于 2008-7-20 12:32:31

沉了,估计各位高手没看到,顶一下!
请给位帮忙!

auto 发表于 2008-7-20 18:13:58

原帖由 runningwater 于 2008-7-18 12:34 发表 http://www.autoitx.com/images/common/back.gif
http://www.google.cn/search?q=%D6%D0%CE%C4

在类似的URL中,“中国”被编码成了“%D6%D0%CE%C4”,

请问如何对任意中文进行如上编码?

已解决问题里有一个:http://www.autoitx.com/forum.php?mod=viewthread&tid ...
“%D6%D0%CE%C4”这不是"中国"编码,而是"中文"的编码 试试下面的脚本
MsgBox(0,0,UrlEncode("中国"))
Func UrlEncode($Url)
Local $UrlLen
$UrlLen = StringLen($Url)
Local $EnStr,$UrlChar,$EnStr
For $i = 1 To $UrlLen Step 1
        $UrlChar = StringMid($Url, $i, 1)
                if ascw($UrlChar) > 256 Then
                        $str =StringReplace(StringToBinary($UrlChar&" ",1),"0x","")
                        $EnStr &= "%"&StringLeft($str,2) & "%"&StringRight($str,2)
                Else
                        $str =StringReplace(StringToBinary($UrlChar),"0x","")
                        $EnStr &= "%"&$str
                EndIf
Next
Return "0x"&$EnStr
EndFunc


[ 本帖最后由 auto 于 2008-7-21 19:43 编辑 ]

e5907 发表于 2008-7-21 11:23:12

楼主提到的已解决问题那个里面,解答的版主是给出的Unicode的编码,
一般都是用的Ansi编码
但是autoit 的ansi编码不知道为什么,对中文支持不好.
你看这里嘛
http://www.autoitx.com/forum.php?mod=viewthread&tid=1769&highlight=url 四楼~

runningwater 发表于 2008-7-24 08:25:41

原帖由 auto 于 2008-7-20 18:13 发表 http://www.autoitx.com/images/common/back.gif

“%D6%D0%CE%C4”这不是"中国"编码,而是"中文"的编码 试试下面的脚本
MsgBox(0,0,UrlEncode("中国"))
Func UrlEncode($Url)
Local $UrlLen
$UrlLen = StringLen($Url)
Local $EnStr,$UrlChar,$EnStr
Fo ...

编码好还是不正确,请问需不需要设置编译参数?

auto 发表于 2008-7-27 11:28:22

我换了新版测试,没有错误啊,只是在编码前面加"0x"
楼主提供的http://www.google.cn/search?q=%D6%D0%CE%C4 是中文
而http://www.google.cn/search?q=%D6%D0%B9%FA
直接在scite调试没有什么问题
没有编译数数设置,试试不要选ansi选unicode编码

runningwater 发表于 2008-7-28 08:44:19

原帖由 auto 于 2008-7-27 11:28 发表 http://www.autoitx.com/images/common/back.gif
我换了新版测试,没有错误啊,只是在编码前面加"0x"
楼主提供的http://www.google.cn/search?q=%D6%D0%CE%C4 是中文
而http://www.google.cn/search?q=%D6%D0%B9%FA
直接在scite调试没有什么问题
没有编译数数设置 ...

有是了一下,确实好用!谢谢了!

雨林GG 发表于 2009-3-30 16:37:09

顶Auto 太感谢LZ和Auto了,查了一下午,终于在这儿找到!

tt12344 发表于 2012-5-24 14:59:53

谢谢分享 支持了
页: [1]
查看完整版本: URL中,对中文进行编码。