【问题标题】:How can I get domain name in Java如何在 Java 中获取域名
【发布时间】:2014-02-19 09:21:55
【问题描述】:

我需要域名。 目前我得到的域名如下

InetAddress addr;
String hostnameCanonical;
try{
    addr = InetAddress.getByName(InetAddress.getLocalHost().getHostName());
    hostnameCanonical = addr.getCanonicalHostName();
    String   strDomainName=hostnameCanonical.substring(hostnameCanonical.indexOf(".")+1,      hostnameCanonical.lastIndexOf("."));
    System.out.println("strDomainName = "+strDomainName);
} 
catch (UnknownHostException e) {
e.printStackTrace();
}

有没有更好更有效的获取域名的方法? 提前致谢。

【问题讨论】:

  • stackoverflow.com/questions/5891084/… 的副本,但该帖子从未得到好的答案,IMO。
  • @EdStaub 如果不是一个好的答案,为什么要作为重复推送?
  • @medokr 我不确定你在问什么。如果你的意思是“我为什么认为这篇文章应该被关闭?”,答案是“我认为它不应该被关闭”。 - 我没有投票关闭它,是吗?事实上,我的评论主要是为了防止其他人在没有检查答案的情况下迅速看到其他帖子,从而引发大量投票结束。

标签: java dns domain-name inetaddress


【解决方案1】:

您可以从您的环境中获取域名。

String domainname = System.getenv("USERDOMAIN");

【讨论】:

  • 此属性包含计算机名称
  • @Nox 不一定,它也可能是网络域的名称(如在 Active Directory 域中),但这仍然不是问题中要求的。
猜你喜欢
  • 1970-01-01
  • 2011-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-10
  • 2019-09-15
  • 2011-09-18
  • 1970-01-01
相关资源
最近更新 更多