建议:1.下文件路径是否正确(包括路径需从根目录开始 /)
2.文件名称若包含中文(new string(path.getBytes("GBK"),"ISO-8859-1"))注意编码问题
主要发现:题主说的用命令创建的文件无法删除问题!自己命令创建的txt文件是可以删除的;不知道题主删除不了的是什么文件;
另:发现 用这个函数删除文件时;ftp上文件已被删除但返回false 这个问题不知谁有遇到,还请不吝赐教
新增类 Ftp 继承org.apache.commons.net.ftp.FTPFile
public boolean removeAll(String pathname) {
try {
FTPFile[] files = this.listFiles(pathname)
for (FTPFile f : files) {
if (f.isDirectory()) {
this.removeAll(pathname + "/" + f.getName())
this.removeDirectory(pathname)
}
if (f.isFile()) {
this.deleteFile(pathname + "/" + f.getName())
}
}
} catch (IOException e) {
e.printStackTrace()
return false
}
return true
}
FtpClient client = new FtpClient(ftp_ip, Integer.parseInt(ftp_port))client.login(ftp_user, ftp_pwd)
client.binary()
client.cd(this.ftp_rdir)
String cmd = "DELE " + filename + "\r\n"
client.sendServer(cmd)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)