【问题标题】:How to convert FTPFIle to File using Java?如何使用 Java 将 FTPFIle 转换为文件?
【发布时间】:2018-05-18 11:28:10
【问题描述】:

我需要从一个共享位置读取所有文件并返回一个文件映射。我使用 FTPClient 访问共享位置。使用 FTPClient 我能够将所有文件作为 FTPFile 检索。但我想将 FTPFile 转换为文件。请看代码。

FTPFile[] ftpFiles = ftpClient.listFiles(folderPath);

注意:- 我不想每次都创建新连接。我想在一个连接中阅读所有内容

【问题讨论】:

  • File 对象表示可能存在或不存在的文件的路径。您真的要创建File 对象,还是要将文件下载到本地磁盘?
  • 我想创建一个 File 对象。我不想保存文件。

标签: java ftp-client


【解决方案1】:

看起来这是一个非常古老的问题,但只是想更新我所做的。

InputStream iStream=ftpClient.retrieveFileStream(ftpFile.getName());
File file = File.createTempFile("tmp", null);
FileUtils.copyInputStreamToFile(iStream, file);

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    如果您只想获取名称,请尝试以下代码:

    private File[] getRemoteFilesInFolder() {
        FTPFile[] elements;
        File[] files;
    
        try {
            elements = ftpClient.listFiles();
            files = new File[elements.length];
    
            for(int i=0; i< elements.length; i++) {
                files[i] = new File(elements[i].getName());
            }
            return files;
    
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2018-08-08
      • 1970-01-01
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-20
      • 1970-01-01
      相关资源
      最近更新 更多