从用户输入网址中提取域名

时间:2013-02-07 02:40:27

标签: java url

我在从用户可以输入的任何网址中提取域名时遇到问题。我们必须使用http://www.google.comhttp://amazon.comhttp://mix.wvu.edu来测试我们的计划。

import java.util.Scanner;

    public class lab3 { 

        public static void main( java.lang.String[] args) { 
            System.out.println ("Please enter the URL");
            Scanner in = new Scanner(System.in);
            String Url = in.nextLine(); 
            System.out.println();
        }
    }

这个令人厌烦的java是我到目前为止所做的,我只是不确定我让用户进入Url之后的下一步是什么!任何帮助都会很棒!

3 个答案:

答案 0 :(得分:2)

使用java.net.URL类,您可以初始化它的实例并将整个输入字符串传递给构造函数。然后使用url.getHost()方法让类为您提取域名。

import java.net.URL;
import java.util.Scanner;

public class lab3 {

    public static void main( java.lang.String[] args) { 
        try {
            System.out.println ("Please enter the URL");
            Scanner in = new Scanner(System.in);
            String input = in.nextLine(); 
            URL url = new URL(input);
            System.out.println(url.getHost());
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }
}

答案 1 :(得分:1)

您可以考虑查看URI类,特别是getHost方法。祝你好运!

答案 2 :(得分:0)

从字符串构造java.net.URL类的实例,并使用相关的getter获取主机组件。详细信息在上面链接的javadoc中。 (java.net.URI是另一种选择,但如果输入应该是URL而不是URI,那么在这种情况下URL类应该不那么麻烦。)