2015-01-13 1 views
1

나는 ftp에 연결을 위해 FTP 클라이언트 공구에 종사하고있다.FTPClient를 사용하여 파일을 바이트 배열로 저장하는 방법은 무엇입니까?

현재이 도구를 통해 ftp로 업로드해야합니다. this post에 따르면 첫 번째 대답은 파일 저장에 FileInputStream을 사용할 수 있습니다. 하지만 바이트 배열, 아니 FileInputStream 같이 파일을 저장할 싶어요.

그렇게 할 방법이 있습니까?

+1

[ByteArrayInputStream] (http://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayInputStream.html)을 사용하십시오. –

답변

3

그냥 업로드 할 데이터는 containes 바이트 배열을 포장하고 FileInputStream에 대신에이 스트림을 사용하는 ByteArrayInputStream를 사용합니다. 예 : 예 :

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

사용자는 ByteArrayOutputStream을 사용하여 바이트를 저장하고 바이트 배열을 가져올 수 있습니다.

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

//to get bytes 

byte[] bArr = baos.toByteArray();