在我的应用程序中,我将一个 byte[](序列化对象)上传到我的 FTP 服务器,它运行良好。但是,当我尝试下载它时,只有数组的第一部分(如 3000 字节)是正确的,其余部分用零填充。
我似乎无法弄清楚出了什么问题,任何帮助将不胜感激。我正在使用包 org.apache.commons.net.*
public static byte[] downloadBoard( String host, int port, String usr, String pwd) throws IOException {
FTPClient ftpClient = new FTPClient();
byte[] buf = new byte[20000];
try {
ftpClient.connect( host, port );
ftpClient.login( usr, pwd );
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
InputStream is = ftpClient.retrieveFileStream("asdf.board");
is.read(buf);
is.close();
ftpClient.completePendingCommand();
ftpClient.logout();
} finally {
ftpClient.disconnect();
}
return buf;
}