FTPClient ftp = new FTPClient(); ftp.connect("172.16.2.5", 21); ftp.login("aaa", "aaaa"); ftp.setFileType(FTPClient.BINARY_FILE_TYPE); ftp.changeWorkingDirectory("C:\\FtpPublic"); InputStream input = new ByteArrayInputStream(bytes); ftp.storeFile(filename,input);
这是优化之前的代码 ,上传几百kb的文件都需要20秒,感觉特别慢,最后在网上查了相关的资料,尝试着对代码进行了优化,
主要是增加了 ftp.setBufferSize(1024*1024); 增大缓存区
其次是因为是网络流 将输入流 加上BufferedInputStream BufferedInputStream input = new BufferedInputStream( new ByteArrayInputStream(bytes));
FTPClient ftp = new FTPClient(); ftp.connect("172.16.2.5", 21); ftp.login("aaa", "aaaa"); ftp.setFileType(FTPClient.BINARY_FILE_TYPE); ftp.setBufferSize(1024*1024); ftp.changeWorkingDirectory("C:\\FtpPublic"); BufferedInputStream input = new BufferedInputStream(new ByteArrayInputStream(bytes)); ftp.storeFile(filename,input);
修改后感觉上传速度飞快,这是本人亲自实践的!!!