如何使用FTPClient将文件存储为字节数组?

时间:2015-01-13 09:14:51

标签: java file-upload ftp-client

我正在使用FTP-Client工具连接到ftp。

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

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:-2)

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

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

//to get bytes 

byte[] bArr = baos.toByteArray();