java urlencoder,java中的URLEncoder和URLDecoder类「建议收藏」

java urlencoder,java中的URLEncoder和URLDecoder类「建议收藏」java中的URLEncoder和URLDecoder类URLEncoder类包含将字符串转换为application/x-www-form-urlencodedMIME格式的静态方法。为了解决web设计中不同操作系统间的差异性,我们在URL中使用的字符就必须是一个ASCII字符集的固定字集中的元素,具体如下:1.大写字母A-Z2.小写字母a-z3.数字0-94.标点符-_.!~…

大家好,又见面了,我是你们的朋友全栈君。

java中的URLEncoder和URLDecoder类

URLEncoder类包含将字符串转换为application/x-www-form-urlencoded MIME 格式的静态方法。

为了解决web设计中不同操作系统间的差异性,我们在URL中使用的字符就必须是一个ASCII字符集的固定字集中的元素,具体如下:

1.大写字母A-Z

2.小写字母a-z

3.数字 0-9

4.标点符 – _ . ! ~ * ‘ (和 ,)

诸如字符: / & ? @ # ; $ + = 和 %也可以被使用,但是它们各有其特殊的用途,如果一个文件名包括了这些字符( / & ? @ # ; $ + = %),这些字符和所有其他字符就应该被编码。

编码过程非常简单,任何字符只要不是ASCII码数字,字母,或者前面提到的标点符,它们都将被转换成字节形式,每个字节都写成这种形式:一个“%”后面跟着两位16进制的数值。

空格是一个特殊情况,因为它们太平常了。它除了被编码成“%20”以外,还能编码为一个“+”。加号(+)本身被编码为%2B。当/ # = & 和?作为名字的一部分来使用时,而不是作为URL部分之间的分隔符来使用时,它们都应该被编码。

类URL并不自动执行编码或解码工作。你能生成一个URL对象,它可以包括非法的ASCII和非ASCII字符和/或%xx。当用方法getPath() 和toExternalForm( ) 作为输出方法时,这种字符和转移符不会自动编码或解码。你应对被用来生成一个URL对象的字符串对象负责,确保所有字符都会被恰当地编码。

幸运的是,java提供了一个类URLEncoder把string编码成这种形式。Java1.2增加了一个类URLDecoder它能以这种形式解码string。这两个类都不用初始化:

public class URLDecoder extends Object

public class URLEncoder extends Object

一、URLEncoder

在java1.3和早期版本中,类java.net.URLEncoder包括一个简单的静态方法encode( ), 它对string以如下规则进行编码:

public static String encode(String s)

这个方法总是用它所在平台的默认编码形式,所以在不同系统上,它就会产生不同的结果。结果java1.4中,这个方法被另一种方法取代了。该方法要求你自己指定编码形式:

public static String encode(String s, String encoding) throws UnsupportedEncodingException

两种关�

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148696.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python数据类型有几种「建议收藏」

    Python数据类型有几种「建议收藏」数据类型是每种编程语言必备属性,只有给数据赋予明确的数据类型,计算机才能对数据进行处理运算,因此,正确使用数据类型是十分必要的,不同的语言,数据类型类似,但具体表示方法有所不同,以下是Python编程常用的数据类型:1.数字类型Python数字类型主要包括int(整型)、long(长整型)和float(浮点型),但是在Python3中就不再有long类型了。int(整型)在…

    2022年6月6日
    27
  • 搜空白符号_excel筛选空白格

    搜空白符号_excel筛选空白格这是网络上很多人都在找的空白格符号,游戏ID、文本编辑、设计等等,这些是确实可用的,如果不小心帮到了你,点赞评论支持。➧ 空白格符号:【】【】【 】【】➧ 小空白格符号:【】【⠀】【⠀】【⠀】【】➧ 极小空白格符号:【⁡】【⁡】 注:【括号中】是有字符的带着括号复制,把括号删除即可下面是一些其他符号:▲÷↑↓◆◇⊙■□△▽─│♂♀▼≈←→◎☉★☆⊿※━┃ツΣ卐√↖↗●Θ◤◥︻〖〗┄┆℃℉°¢€£∞★×↙↘○⊕◣◢︼【】┅┇〓▂▃▄▅▆▇█▉▊▋▌▍▎▏の┈┊①②③④⑤⑥⑦⑧⑨⑩

    2022年10月5日
    2
  • Linux磁盘阵列

    Linux磁盘阵列一、磁盘阵列1基础知识磁盘阵列(RedundantArraysofIndependentDisks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。磁盘阵列是由很多价格较便宜的磁盘,以硬件(RAID卡)或软件(MDADM)形式组合成一个容量巨大的磁盘组,利用多个磁盘组合在一起,提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查(ParityCheck)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算

    2022年5月25日
    36
  • axios实现跨域三种方法_vue跨域配置

    axios实现跨域三种方法_vue跨域配置axios地址

    2025年10月29日
    2
  • android学习—SeekBar和RatingBar

    android学习—SeekBar和RatingBar

    2021年12月15日
    37
  • 秒懂mysql中的group by用法

    秒懂mysql中的group by用法文章转载自:https://blog.csdn.net/u014717572/article/details/80687042先来看下表1,表名为test:执行如下SQL语句:SELECTnameFROMtestGROUPBYname你应该很容易知道运行的结果,没错,就是下表2:可是为了能够更好的理解“groupby”多个列“和”聚合函数“的应用,我建议在思考的过程中…

    2022年5月26日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号