ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:382.16KB ,
资源ID:15363145      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15363145.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(有代码的android ftp4jWord下载.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

有代码的android ftp4jWord下载.docx

1、好了理论就这么简单,再写下去自己就要睡着了,不过上面那个倒是重点,主要是为理解后面源码铺垫的,所以不能错过耶FTP协议ftp协议这里就不给那么多,给了估计大家看了也是白看(因为本人就是,多而枯燥,如果每样都去记这明显是笨蛋的行为,吃力而且效果不明显,这里就说到右脑开发,说白了就是文字图片记忆,虽然高中尝试过锻炼,不过后面自己觉得效果好像没什么显著,估计那个时候思维已经被这个社会的思维给框住了,多悲哀!不过如果代码跟图片结合一起来记忆,效果还是明显。举个例子和一个图片:这张图片是我从某人的网站窃来的-android service 的思维导图,很明显这样代码跟图片一起结合使用,这个知识点你很快就

2、记住了)因此下面协议只列出本文章举例代码里面用到的,剩下的可以问谷老师。命令ACCT 系统特权帐号LIST 如果是文件名列出文件信息,如果是目录则列出文件列表MODE 传输模式(S=流模式,B=块模式,C=压缩模式)NOOP 无动作,除了来自服务器上的承认PASS 系统登录密码PASV 被动模式,等待服务器告诉客户端去哪个端口建立连接PORT IP 地址和两字节的端口 IDQUIT 从 FTP 服务器上退出登录TYPE 数据类型(A=ASCII,E=EBCDIC,I=binary)USER 系统登录的用户名响应代码120 服务器准备就绪的时间(分钟数)125 打开数据连接,开始传输150 打开

3、连接200 成功220 服务就绪221 退出网络227 进入被动模式(IP 地址、ID 端口)230 登录因特网331 要求密码332 要求帐号FTP服务器与客户端搭建这里以Serv-U作为服务器,以LeapFTP3.0.1.46_yfy作为客户端来测试,搭建这个东西主要是为了测试服务器是否建立正确,确认后就可以开始动手做android 客户端的。服务器的搭建很简单,连我这种读过大学的人都知道,更何况那些没读过小学的(-这句话没逻辑错误吧)。总的思路1.创建核心类对象2.建立socket连接3.建立控制通道(命令通道)类4.登陆5.获取服务器目录文件信息6.关闭连接源码分析这个源码分析倒没什么

4、难点,跟之前分析android smack包源码差不多,基本都是以socket为核心,然后根据不同的协议定义不同的解释类,设计不同的项目框架。(声明在看下面的文章时,最好先理解一下ftp4j的使用,这样才能更容易明白)(谨记:上图只显示本文章解释所要用到的类和方法,减缩了一些跟本文主题无关的代码或者一些判断,只留一条贯穿着从建立连接获取服务器目录文件信息关闭连接的线。)1.建立FTPClient对象,连接服务器ftp.connect(169.254.xxx.xxx, 21);public String connect(String host, int port) throws IllegalS

5、tateException, IOException, FTPIllegalReplyException, FTPException synchronized (this.lock) if (this.connected) throw new IllegalStateException(Client already connected to + host + on port + port); Socket connection = null; try connection = this.connector.connectForCommunicationChannel( host, port);

6、 if (this.security = 1) connection = ssl(connection, host, port); munication = new FTPCommunicationChannel(connection, UTF-8); for (Iterator i = municationListeners.iterator(); i .hasNext();) munication .addCommunicationListener(FTPCommunicationListener) i .next(); FTPReply wm = munication.readFTPRe

7、ply(); if (!wm.isSuccessCode() throw new FTPException(wm); this.connected = true; / this.authenticated = false; / this.parser = null; this.host = host; this.port = port; this.username = null; this.password = null; this.utf8Supported = false; this.restSupported = false; this.mlsdSupported = false; th

8、is.modezSupported = false; / this.dataChannelEncrypted = false; / Returns the welcome message. return wm.getMessages(); catch (IOException e) / Doh! throw e; finally / If connection has failed.connected) if (connection != null) / Close the connection, cause it should be open. connection.close(); cat

9、ch (Throwable t) ;在连接服务器过程中,connection = this.connector.connectForCommunicationChannel( host, port);创建了控制通道的socketmunication = new FTPCommunicationChannel(connection, 然后管理socket创建控制通道的管理类,监听信息入口的接收与发送,建立socket完成后通过FTPReply wm = munication.readFTPReply(); 获取服务器的信息,判断是否成功。2.public FTPCommunicationChan

10、nel(Socket connection, String charsetName) throws IOException this.connection = connection; this.charsetName = charsetName; InputStream inStream = connection.getInputStream(); OutputStream outStream = connection.getOutputStream(); / Wrap the streams into reader and writer objects. reader = new NVTAS

11、CIIReader(inStream, charsetName); writer = new NVTASCIIWriter(outStream, charsetName);private String read() throws IOException / Read the line from the server. String line = reader.readLine(); if (line = null) throw new IOException(FTPConnection closed / Call received() method on every communication

12、 listener / registered. for (Iterator iter = communicationListeners.iterator(); iter.hasNext(); FTPCommunicationListener l = (FTPCommunicationListener) iter.next(); l.received(line); / Return the line read. return line;public void sendFTPCommand(String command) throws IOException writer.writeLine(command); l.sent(command);监听socket信息接收与发送的管理类,该类

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1