【问题标题】:How to store file as byte array using FTPClient?如何使用 FTPClient 将文件存储为字节数组?
【发布时间】:2015-03-11 04:40:29
【问题描述】:

我正在开发用于连接 ftp 的 FTP 客户端工具。

这个时候,我需要通过这个工具上传到ftp。根据this post 和第一个答案,可以使用FileInputStream 来保存文件。但我想将文件存储为字节数组,而不是FileInputStream

有什么办法吗?

【问题讨论】:

标签: java file-upload ftp-client


【解决方案1】:

您可以使用 ByteArrayOutputStream 存储字节,并可以获取字节数组。

 InputStream baos = new ByteArrayOutputStream();
 // write bytes here
 baos.write(bytes)

//to get bytes 

byte[] bArr = baos.toByteArray();

【讨论】:

    【解决方案2】:

    只需使用ByteArrayInputStream 包装包含您要上传的数据的字节数组,然后使用此流代替 FileInputStream。例如。类似:

    byte[] mydata = <get your data>;
    InputStream stream = new ByteArrayInputStream(mydata);
    ftpClient.storeFile("remoteName", stream);
    stream.close(); // Not strictly needed for ByteArrayInputStream
    

    【讨论】:

      猜你喜欢
      • 2023-01-31
      • 2011-04-18
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 2018-11-15
      • 2016-01-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多