什么是application/x-www-form-urlencoded字符串?
答:它是一种编码类型。当URL地址里包含非西欧字符的字符串时,系统会将这些字符转换成application/x-www-form-urlencoded字符串。
表单里提交时也是如此,当包含非西欧字符的字符串时,系统也会将这些字符转换成application/x-www-form-urlencoded字符串。
然而,在向服务器发送大量的文本、包含非ASCII字符的文本或二进制数据时这种编码方式效率很低。这个时候我们就要使用另一种
编码类型“multipart/form-data”,比如在我们在做上传的时候,表单的enctype属性一般会设置成“multipart/form-data”。
Browser端<form>表单的ENCTYPE属性值为multipart/form-data,它告诉我们传输的数据要用到多媒体传输协议,由于多媒体传输的都是大量的数据,所以规 定 上传文件必须是post方法,<input>的type属性必须是file。
我们经常会在浏览器的地址栏里看到这样的字符串%E6%96%87%E6%A1%A3,这就是被编码后的字符串,下面我们就讨论一下java 的url编码与解码问题
java.net.URLDecoder.decode(String s,String enc);
将application / x - www - form - urlencoded字符串转换成普通字符串。
java.net.URLEncoder.decode(String s,String enc);
将普通字符串转换成application / x - www - form - urlencoded字符串