ftp不能创建多级目录【循环创建问题】


关于报表导出用上了ftp文件服务器,最开始用字符串存储了文件上传路径,然后使用ftp.makedir(path),后来发现好像不能用它自带的方法创建多级目录。然后上网查,根据大佬们的博客得到了适用的多级目录创建方法。在此可以记录一下。

/**
* ftp创建目录——ftpClient只支持一级一级创建
*
* @param ftp
* @param path
* @return
* @throws IOException
*/
boolean makeDir(FTPClient ftp, String path) throws IOException {
// 分割
String[] paths = path.split("/");
// 创建成功标识
boolean isMakeSucess = false;
// 遍历每一级路径
for (String str : paths) {
// 切换目录,根据切换是否成功判断子目录是否存在
boolean changeSuccess = ftp.changeWorkingDirectory(str);
// 该级路径不存在就创建并切换
if (!changeSuccess) {
isMakeSucess = ftp.makeDirectory(str);
ftp.changeWorkingDirectory(str);
}
}
return isMakeSucess;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM