我使用FTPClient(org.apache.conns.net.ftp.FTPClient)将一些文件上传到FTP服务器。
我需要检查父目录是否存在;并在需要时创建它们。
如何使用FTPClient检查文件/目录是否存在?使用FTPClient检查一个目录是否存在
谢谢
我使用FTPClient(org.apache.conns.net.ftp.FTPClient)将一些文件上传到FTP服务器。
我需要检查父目录是否存在;并在需要时创建它们。
如何使用FTPClient检查文件/目录是否存在?使用FTPClient检查一个目录是否存在
谢谢
您想要FTP STAT命令。
您可以使用此API call来检查您的内容。
试试这个方法:
public static boolean isExists(FTPClient ftpClient, String pathName)
{
ftpClient.getStatus(pathName);
return FTPReply.isPositiveCompletion(ftpClient.getReplyCode());
}
试试这个代码,它为我工作:
FTPClient ftpClient=null;
(ftpClient = new FTPClient()).connect("xxx.xxx.xxx.xxx");
if(ftpClient.login("user", "pass")){
System.out.println(ftpClient.cwd("folder/subfolder"));
***// if returns 250, folder exists and if returned 550 folder does not exist***
}
您好,感谢;你能解释更多吗?这返回'213-STAT 213结束.'!我应该如何理解这个目录? – RYN 2012-03-12 19:06:24
不幸的是,STAT和LIST提供了相同的结果。我想如果你得到一个零长度的信息列表......你将不得不原谅这个事实,因为我已经在FTP协议中获得了这么低的水平,所以已经是年...... STAT和LIST如果在现有目录中使用,应该至少提供'。'和'..'作为有效目录中的可用目录。 – 2012-03-13 10:06:40