我在从用户可以输入的任何网址中提取域名时遇到问题。我们必须使用http://www.google.com,http://amazon.com和http://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之后的下一步是什么!任何帮助都会很棒!
答案 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
类应该不那么麻烦。)