FTP

原文:https://blog.csdn.net/qwe511455842/article/details/76603675

登陆

ftpClient.setControlEncoding("GBK");// 设置登陆编码格式
ftpClient.setConnectTimeout(6000);// 超时60秒
ftpClient.connect(hostName, port);// 连接FTP服务器
ftpClient.login(userName, password);// 登陆FTP服务器

验证是否成功

int reply = client.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
    client.disconnect();
    Log.d(TAG, "无法连接到ftp服务器,错误码为:" + reply);
    return;
 }

文件信息获取

在连接到FTP服务器后,就需要开始获取下载最重要的几个参数(文件长度、文件名)。
客户端可以通过client.listFiles(remotePath)获取FTP服务器上该路径的文件列表。

如果路径是文件,只会返回一个长度为1的数组。
如果该路径为文件夹,则会返回该文件夹下对应的所有文件。

String remotePath = "/upload/qjnn.apk"; //FTP服务器上文件路径
FTPFile[] files = client.listFiles(remotePath);
FTPFile file = files[0];  //文件信息
long size = file.getSize();
String fileaName = file.getName();

如果你的文件为英文名,并且路径中没有中文,那么通过上述代码,便可以获取到正确的文件信息。
但如果FTP上的服务器上的文件名有中文或路径有中文,那么上述代码,你将获取不到正确的文件信息。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • FTP服务概述 简单FTP构建及访问 VSFTP服务基础 用户禁锢、黑白名单 FTP并发及带宽限制 一、FTP服务...
    紫_轩阅读 7,758评论 3 25
  • 因此,你需要在指定位置手动停止线程。FTP多线程断点下载实现主要有以下步骤:1,登录服务器FTP协议和HTTP协议...
    SDY_0656阅读 3,421评论 0 2
  • 本文将针对ftp系统共介绍6部分,分别是ftp协议(双重连接:控制和数据连接),ftp的主动和被动模式(区别/使用...
    robot_test_boy阅读 14,852评论 6 19
  • 本文是对FTP相关操作,例如新建/删除目录、新建/删除文件、获取文件/目录列表等的总结,方便日后调用。 其实C#操...
    Nmao阅读 1,300评论 0 0
  • 早餐的叉烧包很好吃 但要撕掉底下的纸 因为我知道它就像我和你的关系 难以下咽
    北哲兄阅读 127评论 0 0