java关于URL、URLEncoder、URLDecoder类的使用

本文深入探讨了Java中的URL类及其方法,详细介绍了如何解析URL中包含的主机、端口、请求参数等关键信息,并展示了如何使用URLEncoder进行URL编码以及URLDecoder进行解码的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

URL:统一资源定位符。如:http://www.xxx.com?name=java&age=23#30
     通常,我们要分解出URL中的某个部分,比如主机,端口,请求参数等等这些数据。java为我们提供了URL这个类,该封装了很多获取相关数据的方法。
public class URLTest {
       /**
       * @param args
       * URL 统一资源定位符
       */
       public static void main(String[] args) {
             try {
                  URL url = new URL("http://10.12.82.66:8080/game/index.html?name=java&age=23#110" );
                   //获取主机与端口部分   10.12.82.66:8080
                  System. out.println(url.getAuthority());
                   //URL的默认端口是 80
                  System. out.println(url.getDefaultPort());
                   //获取URL的指定的文件  主机部分之后的内容: /资源路径/资源名称?资源参数&资源参数  /game/index.html?name=java&age=23
                  System. out.println(url.getFile());
                   //获取主机部分    10.12.82.66
                  System. out.println(url.getHost());
                   //获取资源路径   /game/index.html
                  System. out.println(url.getPath());
                   //获取端口号   8080
                  System. out.println(url.getPort());
                   //获取请求的协议  http
                  System. out.println(url.getProtocol());
                   //获取请求参数,健值对 name=java&age=23
                  System. out.println(url.getQuery());
                   //获取锚点  110
                  System. out.println(url.getRef());
                  
            } catch (MalformedURLException e) {
                  e.printStackTrace();
            }
      }
}

URLEncoder:
     说一个情景,当我们url有一个请求的参数是这样的name=java&c,怎么办?此时就可以通过URLEncoder这个类帮我们解决这类问题。
URLDecoder:
     与URLEncoder功能相反,将URLEncoder编码后的数据再解析回来。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值