Android访问FTP服务器,实现文件下载,一个简单的Demo
Android 访问FTP服务器,实现文件的下载,一个简单的Demo,下面是一些简单的代码片。如果对FTP不太了解的话,最好先去简单的了解哈
在测试的过程中,总是与服务器的连接容易断开,要考虑下与服务器保持长连接,多个文件同时下载时js访问ftp服务器的文件,线程问题,注意与服务器的连接、文件的下载需要在子线程中完成,不然会报错,后续还需完善。
首先需要导入jar包:(下载连接),内含API文档。
需要的一些权限:
1.创建 FTPClient对象:
FTPClient client = new FTPClient();
2.连接FTP服务器:
client.connect("host", port);//host:服务器IP地址 port:端口
// username: 账号 password: 密码
client.login("username", "password");
// 如果不需要账号、密码的话,默认是username是"anonymous"
/** 获取所有文件的名称**/
/*String[] file = client.listNames();
for (int i = 0; i < file.length; i++) {
Log.i("file", file[i]);
}*/
3.下载文件:
//创建文件的存储位置
String dir = Environment.getExternalStorageDirectory()
+ "/Images/";
File fileDir = new File(dir);
if (!fileDir.exists()) {
fileDir.mkdirs();
}
String path = dir + "fileName.jpg";//下载下来的文件名
final File nfile = new File(path);
if (nfile .exists()) {
nfile .delete();
Log.i("delete", "file deleted");
}
// "/Z/fileName.jpg" 服务器文件目录,"nfile " 本地存储位置
//new MyTransferListener() 下载监听接口FTPDataTransferListener
client.download("/Z/fileName.jpg",nfile ,new MyTransferListener());
这是示例代码:
public class MyTransferListener implements FTPDataTransferListener {
public void started() {
// Transfer started
}
public void transferred(int length) {
// Yet other length bytes has been transferred since the last time this
// method was called
}
public void completed() {
// Transfer completed
}
public void aborted() {
// Transfer aborted
}
public void failed() {
// Transfer failed
}
}
这只是一个简单的连接FTP服务器,下载操作,还有很多需要完善,查看API慢慢完善你的功能js访问ftp服务器的文件,终会实现你想要的
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
最新评论
Z.
11月29日
博主你好,Deng插件,这个点击不进去,提示这个(Warning: require_once(/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php): failed to open stream: No such file or directory in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26
Fatal error: require_once(): Failed opening required '/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php' (include_path='.:/www/server/php/72/lib/php') in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26)
点都德
2天前
:喷::喜欢::怒::黑线: