Slash before InetAddress.getByName(host)

2022-09-03 00:49:03

如何删除 输出中的斜杠 ?InetAddress.getbyName


更新

谢谢大家,我刚刚做到了。

其中一个解决方案是:

String ip_old = myInetaddress.toString(); 
String ip_new = ip_old.substring(1); 

答案 1

如果您只想要 IP,请使用主机地址:

String address = InetAddress.getByName("stackoverflow.com").getHostAddress();

如果只需要主机名,请使用

String hostname = InetAddress.getByName("stackoverflow.com").getHostName();

编辑

您看到的斜杠可能是当您尝试打印出来时对返回的进行隐式操作时,它会打印由斜杠分隔的主机名和地址(例如)。您可以使用toString()InetAddressstackoverflow.com/64.34.119.12

String address = InetAddress.getByName("stackoverflow.com").toString().split("/")[1];
String hostname = InetAddress.getByName("stackoverflow.com").toString().split("/")[0];

但是根本没有理由去这里的中介。 使这两个字段在本质上保持分离。StringInetAddress


答案 2

我假设你在此之后正在做一个toString?为什么不直接使用正常的字符串操作,即子字符串?


推荐