URLEncoder和URLDecoder中特殊字符的处理方案 URL传值问题
在Java中,我们会经常对一些中文字符进行URL编码,这样的就可以在数据传递中解决中文乱码的现象。
但是在对于一些特殊字符的URLEncoder编码后 在通过URLDecoder解码处理会出现丢失,乱码的现象。
造成这样现象的原因主要是:URL编码没有对其进行转码。
其解决的办法是:十六进制值
以下8个特殊字符URL编码没有对其进行转码 | 十六进制值 | ||
1. | + | URL 中+号表示空格 | %2B |
2. | 空格 | URL中的空格可以用+号或者编码 | %20 |
3. | / | 分隔目录和子目录 | %2F |
4. | ? | 分隔实际的 URL 和参数 | %3F |
5. | % | 指定特殊字符 | %25 |
6. | # | 表示书签 | %23 |
7. | & | URL 中指定的参数间的分隔符 | %26 |
8. | = | URL 中指定参数的值 | %3D |
把特殊字符进行十六进制转换,然后进行URLEncoder编码,最后URLDecoder解码出来就没有问题了。
url后参数的转码与解码
import java.net.URLDecoder;
import java.net.URLEncoder;
String strTest = "?=abc?中%1&2<3,4>";
strTest = URLEncoder.encode(strTest, "UTF-8");
System.out.println(strTest);
strTest = URLDecoder.decode(strTest,"UTF-8");
System.out.println(strTest);
执行结果:
%3F%3Dabc%3F%E4%B8%AD%251%262%3C3%2C4%3E
?=abc?中%1&2<3,4>
URLEncoder和URLDecoder中特殊字符的处理方案 URL传值问题相关推荐
- 网址URL中特殊字符转义编码
网址URL中特殊字符转义编码 字符 - URL编码值 空格 - %20 " - %22 # - %23 % ...
- 浏览器URL中特殊字符转义编码
网址URL中特殊字符转义编码 字符 - URL编码值 空格 - %20 " - %22 # - %23 % ...
- java urlencoder,java中的URLEncoder和URLDecoder类
java中的URLEncoder和URLDecoder类 URLEncoder类包含将字符串转换为application/x-www-form-urlencoded MIME 格式的静态方法. 为了解 ...
- urlEncoder和urlDecoder的作用和使用
URLEncoder到底是干什么用的?? 都说是对form表单里的请求编码解码用的,但是为什么在写中文文件下载的时候也用到了. 就是说国际通用的编码对中文支持不好,所以需要对着玩意进行转换. 因为中文 ...
- URLEncoder 、URLDecoder 对 URL 编解码,HttpURLConnection 文件下载
目录 URLEncoder 编码 URLDecoder 解码 URL 空格问题 与 HttpURLConnection 文件下载 URLEncoder 编码 1.public class URLE ...
- URLEncoder和URLDecoder(乱码处理)
前言 在进行向服务器传递表单数据的实验的时候,发现得到的英文字符正常而中文字符都是乱码.在百思不得其解的时候,学习了一下URLEncoder和URLDecoder,以及顺藤摸瓜找到了产生乱码的原因和解 ...
- web开发中特殊字符的对应值与转义字符
URL中的特殊字符 URL中的特殊字符是不能再URL中直接传递的,需要进行编码.编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值. 字符 名称 16进制 ...
- URLEncoder和URLDecoder实现转码和解码
在Java开发中,URL跳转经常遇到中文乱码问题.实际上,如果细心的话,我们会发现在访问网页时经常会在URL中看到一些16进制格式的字符串,如:http://xxx.com/s?w=%e7%bc 这其 ...
- Java之URLEncoder和URLDecoder类使用小记
网页中的表单使用POST方法提交时,数据内容是application/x-www-form-urlencoded类型. 从普通字符串到编码到application/x-www-form-urlenco ...
最新文章
- 常见几种浏览器兼容性问题与解决方案
- d3.js 旋转图形_几何画板第9期图形的组合型运动
- Docker Compose部署项目到容器-基于Tomcat和mysql的商城项目(附源码和sql下载)
- reactjs虚拟DOM与真实DOM
- 近期大热的AutoML领域,都有哪些值得读的论文?
- H5项目开发分享——用Canvas合成文字
- 黑马程序员---面向对象笔记总结
- 解决方案:秒杀整体设计
- AnalyserNode
- oracle ora-14404,分区表的分区表空间不同引起的删除表空间错误
- 随记:Ubuntu12.04下关闭图形界面的相关问题
- 100行Python代码的贪吃蛇
- The essentiality for Close-Out The Project
- python元素定位_Python自动化中的元素定位(一)
- 隧道在线监测系统解决方案
- 12岁的微博回港上市,还有新故事吗?
- 足球竞赛规则的部分补充说明
- web期末大作业-前端网页--H5--海贼王动态网页源码-海贼王网页
- python—判断语句练习题05
- FileExistsError: [WinError 183] 当文件已存在时,无法创建该文件。附文件重命名代码