我需要检查一个 FTP 服务器是否还活着,是这个服务器:
ftp://speedtest.tele2.net/upload/
我尝试使用此代码:
FTPClient ftp = new FTPClient();
try {
ftp.setConnectTimeout(5000);
ftp.setDefaultTimeout(5000);
ftp.setDataTimeout(5000);
ftp.connect(urlString);
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
} finally {
ftp.disconnect();
}
问题在于返回此异常:
<块引用>java.net.UnknownHostException:无法解析主机“ftp://speedtest.tele2.net/upload/”:没有与主机名关联的地址
如何实现?
答案 0 :(得分:3)
connect
方法采用主机名,而不是 URL。
ftp://
部分没用;这是一个 FTP 客户端,它不能做任何其他事情。
/upload
部分也无用;直到连接后才能进入该路径。因此,获取 URL 是没有意义的,因此 API 的设计是正确的。
致电.connect("speedtest.tele2.net")
。