java - 使用 ftp4j 上传目录

标签 java ftp ftp4j

我正在尝试编写一个递归函数,它将整个目录上传到 ftp 服务器上。我需要检查我上传的目录是否已经存在,所以我需要检查该目录是否存在。但在 ftp4j 中我目前无法找到任何此类函数。

代码:

if(!upclient.isConnected()){
    upclient.connect(ftp_ip);
    upclient.login(ftp_login, ftp_pass);
}
//i want to check here if the dir exit..if no i will create one
upclient.changeDirectory(ftpupload_path);
if (upclient.isConnected()) {
    System.out.println("Connected to " + ftp_ip);
    File local_dir=new File(local_path);
    File[] uploadFiles=local_dir.listFiles();
    for (File uploadfile : uploadFiles) {
        if(uploadfile.isFile()){
            System.out.println("Uploading" + upclient.currentDirectory() + "/" + uploadfile.getName());
    upclient.upload(uploadfile);
        } else if(uploadfile.isDirectory()){
            uploadDir(ftp_ip, ftp_login, ftp_pass,upclient.currentDirectory()+"/"+uploadfile.getName(), uploadfile.getAbsolutePath());
            upclient.changeDirectory(ftpupload_path);
        }
    }
}

最佳答案

如果你想检查目录是否存在,如果不存在则创建它,可以使用以下代码:

try {
    upclient.changeDirectory(dir);
} catch(FTPException e) {
    upclient.createDirectory(dir);
    upclient.changeDirectory(dir);
}

关于java - 使用 ftp4j 上传目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17588892/

相关文章:

java - Spring Tool Suite 3.6.1 不会更新

java - 使用 Jackson 自定义 JSON 反序列化

java - kotlin:检查一个类是否是对象类?

php - 远程服务器FTP php脚本服务器到服务器

ruby - 在 OSX 上的 Ruby 中同时上传文件夹中的文件

php - 支持 SVN 和 FTP 的快速 Windows PHP 编辑器?

Java ftp4j - 以 amn 主动模式连接时列出 FTP 服务器中的文件

java - 使用 Java 递归列出 FTP 服务器中的文件和目录

java - 带有图像的奇怪 FileNotFoundException