前几天看到有网友在问URLDecoder和URLEncoder方面的使用问题,突然想起,原来我刚遇到这两个类时,也觉得很神密,由此可以想想初学者的心情,于是便有了今天的这篇文章.
   其实,这两个类的使用并不复杂,URLDecoder和URLEncoder它的作用主要是用于普通字符串和application/x-www-form-rulencodedMIME字符串之间的转换,一般的人会以为后一个字符串比较专业,以为有什么高深的知识,其实不然.

下面,我们在在"百度"中搜索"网络时空",会看到如下所示的图示

从上图中可以看出:当我们搜索的关健字包含中文时,这些关健字就会变成如图所示的"乱码",实际上这不是乱码,这就是所谓的applicaion/x-www-form-urlencodedMIME字符串.
     当URL地址里包含非西欧字符的字符串时,系统会将这些非西欧转换成如图所示的特殊字符串,那么编码过程中可能涉及将普通字符串和这种特殊字符串的相关转换,这就是需要使用URLDecoder和URLEncoder类

URLDecoder类包含一个decode(String s,Stringcharcter)静态方法,它可以将看上去乱码的特殊字符串转换成普通字符串
     URLEncoder类包含一个encode(String s,Stringcharcter)静态方法,它可以将普通字符串转换成application/x-www-form-urlencodedMIME字符串

   如下程序代码 
importjava.net.*;

public class URLDecoderTest
{
 public static void main(String[] args)
  throws Exception
 {
  //将application/x-www-form-urlencoded字符串
  //转换成普通字符串
  //其中的字符串直接从上图所示窗口复制过来
  String keyWord =URLDecoder.decode(
   "%CD%F8%C2%E7%CA%B1%BF%D5","UTF-8");
  System.out.println(keyWord);
  //将普通字符串转换成
  //application/x-www-form-urlencoded字符串
  String urlStr =URLEncoder.encode(
   "网络时空" ,"UTF-8");
  System.out.println(urlStr);
 }
}

上面程序中就是普通中文字符串和application/x-www-form-urlencoded MIME字符串之间的转换.

运行上面程序结果图示如下

最新文章

  1. ajex请求的数据 什么时候需用Json.parse()
  2. HITtrainning20140417题解
  3. oracle中用SQL实现两个日期间的日期形成一个数据集
  4. [转]layoutSubviews总结
  5. 搜索打表大找规律 (hdu2045)
  6. SilkTest Q&A 12
  7. 用Spark学习FP Tree算法和PrefixSpan算法
  8. hushset的实现原理
  9. nodejs中异步
  10. Python基础-类变量和实例变量
  11. UWP中使用Telerik UI For UWP
  12. 201521123088《java程序设计》第三周学习总结
  13. 【CJOJ2512】gcd之和(莫比乌斯反演)
  14. ECMAScript 6 学习(一)generator函数
  15. PHP中的反射
  16. kettle在centos7下部署分布式集群
  17. Android TextView 跑马灯效果 - 2018年6月19日
  18. python学习 day07打卡 文件操作
  19. Android程序示例
  20. HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'NTLM'。

热门文章

  1. Pro ASP.NET MVC 5 Framework.学习笔记.6.3.MVC的必备工具
  2. android 数据库操作
  3. 修改tomcat的logo
  4. ISO C90 forbids mixed declarations and code 警告
  5. 网站性能优化之CSS无图片技术:三角形
  6. Mysql-学习笔记(==》集合函数与分组四)
  7. android sdk 国内镜像地址
  8. 在centos6.3用yum安装redis
  9. BZOJ 2566 xmastree(树分治+multiset)
  10. CodeForces 471C MUH and House of Cards