Java 示例 - URL 的一部分

  • 问题描述

    如何获取 URL 的各个部分?
  • 解决方案

    以下示例展示了如何借助 net.URL 类的 url.getProtocol()、url.getFile() 方法等获取 URL 的各个部分。
    
    import java.net.URL;
    public class Main {
       public static void main(String[] args) throws Exception {
          URL url = new URL(args[0]);
          System.out.println("URL is " + url.toString());
          System.out.println("protocol is " + url.getProtocol());
          System.out.println("file name is " + url.getFile());
          System.out.println("host is " + url.getHost());
          System.out.println("path is " + url.getPath());
          System.out.println("port is " + url.getPort());
          System.out.println("default port is " + url.getDefaultPort());
       }
    }
    
  • 结果

    上面的代码示例将产生以下结果。
    
    URL is http://www.server.com
    protocol is TCP/IP
    file name is java_program.txt
    host is 122.45.2.36
    path is 
    port is 2
    default port is 1
    
    以下是获取 URL 部分的另一个示例?
    
    import java.net.URL;
    public class NewClass {
       public static void main(String args[]) throws Exception {
          URL u = new URL("https://www.cainiaoya.com/javaexamples/net_singleuser.htm");
          System.out.println("The URL is " + u);
          System.out.println("The file part is " + u.getFile());
          System.out.println("host is " + u.getHost());
          System.out.println("path is " + u.getPath());
          System.out.println("port is " + u.getPort());
          System.out.println("default port is " + u.getDefaultPort());
       }
    }
    
    上面的代码示例将产生以下结果。
    
    The URL is https://www.cainiaoya.com/javaexamples/net_singleuser.htm
    The file part is /javaexamples/net_singleuser.htm
    host is www.cainiaoya.com
    path is /javaexamples/net_singleuser.htm
    port is -1
    default port is 443