先介紹一下,Delphi中處理Google的URL編碼解碼,其中就會明白URL編碼轉換的方法的
從delphi的角度看Google(谷歌)URL編碼解碼方式
在網上搜索了一下,似乎沒有什么關於google的URL編碼解碼的很詳細的資料,因此在這里寫一下,希望給有用的人提供一點幫助。
使用google谷歌搜索一下關鍵詞,對應的編碼如下: 刀:%E5%88%80 刀具:%E5%88%80%E5%85%B7
刀具網:%E5%88%80%E5%85%B7%E7%9A%84
因此可見,google對URL的編碼並非簡單的httpencode編碼,因為httpencode編碼后的字符串應該是帶有兩個百分號的,而這個是三個百分號。多嘗試一下就不難發現googleURL的編碼解碼規則如下:
1、編碼,先UTF8編碼,然后再URL編碼。
使用delphi編碼的方法:加入待編碼原始字符串為OiginStr,則編碼后的字符串為:
NewStr:=HttpEncode(UTF8Encode(OiginStr))
其中HttpEncode函數需要用到HttpApp,記得uses中加入。
2、解碼,先URL解碼,然后再UTF8解碼。
使用delphi解碼的方法:加入待解碼字符串為NewStr,則解碼后的原始字符串為:
OiginStr:=UTF8Decode(HttpDecode(NewStr))
其中HttpEncode函數需要用到HttpApp,記得uses中加入。
相對來說百度就簡單得多,一個httpencode就搞定了