Google的URL编码解码之delphi

使用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就搞定了

时间: 2024-10-11 05:48:20

Google的URL编码解码之delphi的相关文章

百度移动版的url编码解码代码

1 var decode = function(m) { 2 try { 3 m = decodeURIComponent(m); 4 } catch(e) {} 5 var s = m.split("%"); 6 if (s.length > 1) { 7 s.shift(); 8 for(var i = 0; i < s.length; i++) { 9 var t = s[i]; 10 t = parseInt(t, 16); 11 t = t + 256; 12 t

编码解码--url编码解码

url编码解码,又叫百分号编码,是统一资源定位(URL)编码方式.URL地址(常说网址)规定了常用地数字,字母可以直接使用,另外一批作为特殊用户字符也可以直接用(/,:@等),剩下的其它所有字符必须通过%xx编码处理. 现在已经成为一种规范了,基本所有程序语言都有这种编码,如js:有encodeURI.encodeURIComponent,PHP有 urlencode.urldecode等.编码方法很简单,在该字节ascii码的的16进制字符前面加%. 如 空格字符,ascii码是32,对应16

ASP.NET中Url编码解码

今天遇到Url编码解码的问题,纠结了一天的时间,结果上网一查才发现太二了我们. 同事写的代码把url用HttpUtility.UrlEncode编码和解码了,本地测试没有问题,部署到服务器上就提示转码失败,查看问题发现转码的时候把“+”转成了“%”,但是解码的时候把“%”装换成了“ ”空格,最后上网查了下很多网友都遇到过这种问题, 最后把HttpUtility.UrlEncode替换成了一下的方式就OK了. var email="15586757225"; string after =

详解JavaScript中的Url编码/解码,表单提交中网址编码

本文主要针对URI编解码的相关问题做了介绍,对Url编码中哪些字符需要编码.为什么需要编码做了详细的说明,并对比分析了Javascript 中和 编解码相关的几对函数escape / unescape,encodeURI / decodeURI和 encodeURIComponent / decodeURIComponent. 预备知识 foo://example.com:8042/over/there?name=ferret#nose \_/ \______________/ \_______

URL编码解码

ios url 编码和解码 1.url编码 ios中http请求遇到汉字的时候,需要转化成UTF-8,用到的方法是: NSString * encodingString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 2.url解码 请求后,返回的数据,如何显示的是这样的格式:%3A%2F%2F,此时需要我们进行UTF-8解码,用到的方法是: NSString *str = [model.

iOS url 编码解码

1.url编码 ios中http请求遇到汉字的时候,需要转化成UTF-8,用到的方法是: NSString * encodingString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 2.url解码 请求后,返回的数据,如何显示的是这样的格式:%3A%2F%2F,此时需要我们进行UTF-8解码,用到的方法是: NSString *str = [model.album_name str

使用python对url编码解码

url中的query带有特殊字符(不是url的保留字)时需要进行编码. 当url中带有汉字时,需要特殊的处理才能正确编码,以下都只针对这种情形,当然也适用于纯英文字符的url. (1) url编码: import urllib url = 'http://test.com/s?wd=哈哈' url = url.decode('gbk', 'replace') print urllib.quote(url.encode('utf-8', 'replace')) 结果: http%3a%2f%2ft

url 编码解码

from urllib import parse#url编码url = 'http://www.baidu.com?query = python基础教程'url_str = parse.quote_plus(url) #quote 跟quote_plus一样的,后者更牛逼,把汉字变成url编码print(url_str) #http%3A%2F%2Fwww.baidu.com%3Fquery+%3D+python%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B#url解码

PHP和javascript中url编码解码详解

在实际开发中,我们可能会遇到路径编码解码的问题,下面总结了一下: PHP中: 1.urlencode(编码),urldecode(解码) $a = urlencode('http://www.baidu.com?name=test&query=字母'); echo $a //http%3A%2F%2Fwww.baidu.com%3Fname%3Dtest%26query%3D%E5%AD%97%E6%AF%8D 2.rawurlencode.rawurldecode 这个函数跟上面的大部分一模一