java %2f_字符串“http%3A%2F%2F”转换成http://详解

news/2024/11/30 0:36:02/

我截获下来一个URL的字符串格式是“http%3A%2F%2F”,但是实际应该是http://

而“%2F”对应的就是 /

如果仅仅是想把字符串http%3A%2F%2F转换成http://的话,用strstr()等字符串系列函数应该可以解决吧

对于“http%3A%2F%2Fwww.baidu.com%2Fasd%3Fa%3D123”这种特殊字符被转义成16进制的字符串, 虽然知道“%3A”表示冒号(百分号“%”是转义符, 相当于正则当中的反斜杠”/”)

但是很少人会采用这种匹配字符串的方法来强行转义,因为这种匹配不仅不准确, 而且效率很低

而JS当中早就有了这种方法, encodeURIComponent和decodeURIComponent 容易理解, 前者是转义字符串, 后者是解析字符串

所以当遇到上面的字符串时, 那就可以用 decodeURIComponent解析, 而解析结果也会变成我们想要的字符串“http://www.baidu.com/asd?a=123”

而decodeURI和encodeURI, 跟前面的类似, 只不过不会转义特殊字符

例如:

http%3A%2F%2Fimg61.hbzhan.com%2F2%2F20130524%2F635049815930316074649.jpg

解码后就是:

http://img61.hbzhan.com/2/20130524/635049815930316074649.jpg

fb315c67828d094eb426af39fdeb550a.pngAuthor popCategoriesTechnology


http://www.ppmy.cn/news/570007.html

相关文章

java c2 compiler_C2中的CompilerThread

我在java进程(oracle jdk1.7_072)上运行jstack并找到了这些行 "C2 CompilerThread1" daemon prio10 tid0x00007f1a8415d000 nid0x7d72 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread0" daemon prio10 t…

通过PPP连接GSM的一个数据流实例

接收:7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 32 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 7D 27 7D 22 7D 28 7D 22 55 83 7E 发送:7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 34 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 25 7D 26 7D 2…

NR/5G - 一种TDD+FDD场景下Type I codebook size分析

在下面的场景中 - 载波聚合,FDD子载波间隔为15KHz,TDD子载波间隔为30KHz HARQ-ACK反馈配置在FDD上反馈 两个载波都配置了需要检测DCI format 1-1,K1的集合为{2,3,4,5,6,7,8} TDD的周期为5ms,7D 2U 1S时隙格式 下面看Harq a…

rs2::invalid_value_error‘ hwmon command 0x7d failed

暂时还没解决 今天安装完Intel D435i的libRealsense后,在终端运行roslaunch realsense2_camera rs_camera.launch时 roslaunch realsense2_camera rs_camera.launch 返回报错: 12/11 22:13:14,505 WARNING [140508912400128] (types.cpp:78) hwmon c…

Canon 7D Mark II: Tips, Tricks, Techniques Canon 7D Mark II使用技巧 Lynda课程中文字幕

Canon 7D Mark II: Tips, Tricks, & Techniques 中文字幕 Canon 7D Mark II使用技巧 中文字幕Canon 7D Mark II: Tips, Tricks, & Techniques 您一段时间都在使用佳能7D Mark II - 但您是否有效地使用它? 这些相机具有定制功能,可以让您调整处…

keystone提示“......The client is assumed to be in error. (HTTP 400) (Request-ID: req-7d2a33be-..)“错误

在安装openstack验证keystone时执行"openstack --os-auth-url http://controller:35357/v3 --os-project-domain-name default --os-user-domain-name default --os-project-name admin --os-username admin token issue"提示以下错误. Expecting to find domain in…

CS0016: 未能写入输出文件...\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--拒绝访问。 解决方法

Asp.net部署后访问网站出现问题(Windows 7 旗舰版): CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\web\4b49f661\23a749fc\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--“拒绝访问。 ” 解决方法: 找到C:\Win…

【接口测试】HTTP接口详细验证清单

概述 当我们在构建、测试、发布一套新的HTTP API时,包括我在内的大多数人都不知道他们所构建的每一个组件的复杂性和细微差别。 即使你对每一个组件都有深刻的理解,也可能会有太多的信息在你的脑海中出现。 以至于我们不可能一下把所有的信息进行梳理…