Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 转换中字符串到InetAddress的错误_Java_Android - Fatal编程技术网

Java 转换中字符串到InetAddress的错误

Java 转换中字符串到InetAddress的错误,java,android,Java,Android,我想我的问题对这里的人来说很简单?问题是,当我执行以下代码时: InetAddress addr; addr=InetAddress.getByName("192.168.1.1"); Toast.makeText(this,"InetAddress Value: "+addr.toString(),Toast.LENGTH_LONG).show(); addr返回值为/192.168.1.1 我想知道我做错了什么? 提前感谢 回答来自 如果您只需要IP,请使用主机地址: String add

我想我的问题对这里的人来说很简单?问题是,当我执行以下代码时:

InetAddress addr;
addr=InetAddress.getByName("192.168.1.1");
Toast.makeText(this,"InetAddress Value: "+addr.toString(),Toast.LENGTH_LONG).show();
addr
返回值为
/192.168.1.1
我想知道我做错了什么? 提前感谢

回答来自

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

String address = InetAddress.getByName("stackoverflow.com").getHostAddress();
如果只需要主机名,请使用

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

您看到的斜杠可能是在您尝试打印返回的InetAddress时对其执行隐式toString()操作,该操作将打印由斜杠分隔的主机名和地址(例如stackoverflow.com/64.34.119.12)。你可以用

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

但是这里根本没有理由去字符串中介。InetAddress将这两个字段本质上分开。

即使我只编写Toast.makeText(这是“InetAddress值:”+addr,Toast.LENGTH_LONG).show();它给出了相同的答案。您想看到什么..?public void getInet(View v1)抛出UnknownHostException{String asd=ed1.getText().toString();InetAddress addr=InetAddress.getByName(asd);Toast.makeText(这个,“Inet Address:+addr,Toast.LENGTH_LONG).show();}上面的简单代码给出了在edittext中传递的任何ipaddress作为/+edittext值。是否有任何方法可以删除您希望在Toast中看到的前斜杠。。您期望的输出是什么?应该只有192.168.1.1,因为我只想将字符串转换为inetaddress,以便可以ping ip