java FTP下载文件在代码中如何实现知道下载完成?

java FTP下载文件在代码中如何实现知道下载完成?,第1张

public static void downloadFileFtp(KmConfig kmConfig,String fileName, String clientFileName, OutputStream outputStream){
try {
String ftpHost = kmConfiggetFtpHost();
int port = kmConfiggetFtpPort();
String userName = kmConfiggetFtpUser();
String passWord = kmConfiggetFtpPassword();
String path = kmConfiggetFtpPath();
FtpClient ftpClient = new FtpClient(ftpHost, port);// ftpHost为FTP服务器的IP地址,port为FTP服务器的登陆端口,ftpHost为String型,port为int型。
ftpClientlogin(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码
ftpClientbinary();
ftpClientcd(path);// path为FTP服务器上保存上传文件的路径。
try {
TelnetInputStream in = ftpClientget(fileName);
byte[] bytes = new byte[1024];
int cnt=0;
while ((cnt=inread(bytes,0,byteslength)) != -1) {
outputStreamwrite(bytes, 0, cnt);
}
//##############################################
//这里文件就已经下载完了,自己理解一下
//#############################################

outputStreamclose();
inclose();
} catch (Exception e) {
ftpClientcloseServer();
eprintStackTrace();
}
ftpClientcloseServer();
} catch (Exception e) {
Systemoutprintln("下载文件失败!请检查系统FTP设置,并确认FTP服务启动");
}
}

打开Xftp工具,在“新建会话属性”中选择“名称”为主机命名,在“主机”栏输入主机IP,“协议”和“端口号”使用默认ftp和21,在“用户名”和“密码“栏输入账户密码。点击确定。
回到Xftp主窗口在”新建“按钮右侧有一个文件样式的图标为”打开“按钮,点击该按钮,在d出的小窗口中选择刚刚新建的主机,双击就连接到FTP服务器上面了。

当你的电脑上面同时安装了Xshell和Xftp的时候,可以通过Xshell主窗口上面的Xftp图标通过sftp快速连接到服务器。打开Xshell,连接到服务器。点击Xshell主窗口菜单栏Xftp图标,即可使用sftp协议登录到远程服务器上传下载文件。
使用ftp协议配置的端口是21;而Xshell登录默认用的是22端口,ssh协议,也就是sftp。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13447574.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-08
下一篇 2023-08-08

发表评论

登录后才能评论

评论列表(0条)

保存