FTP客户端设计和实现.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FTP 客户端 设计 实现
- 资源描述:
-
目录 摘要..........................................................2 关键词........................................................2 1.引言........................................................2 2.FTP协议分析.................................................2 2.1FTP工作原理.............................................2 2.2FTP工作模式.............................................4 2.3FTP传输模式.............................................6 2.3.1ASCII传输方法.....................................6 2.3.2二进制传输方法....................................6 3.FTP用户端总体设计.........................................6 3.1设计目标及工具选择....................................6 3.1.1设计目标..........................................6 3.1.2设计工具..........................................7 3.1.3FtpClient类.......................................7 3.2用户端关键模块设计......................................7 3.2.1用户端功效模块....................................8 3.2.2用户端界面设计....................................9 3.3数据步骤图..............................................9 3.3.1用户端连接步骤图..................................9 3.3.2上传子模块步骤图..................................11 3.3.3下载子模块步骤图.................................12 4.FTP用户端程序实现...........................................14 4.1用户端显示界面实现.....................................14 4.1.1数据输入界面具体设计.............................14 4.1.2服务器文件信息显示界面具体设计...................14 4.1.3上下载队列显示界面和信息显示界面具体设计.........15 4.1.4操作按钮模块具体设计.............................15 4.2功效模块实现...........................................16 4.2.1连接服务器.......................................16 4.2.2上传文件.........................................16 4.2.3下载文件.........................................17 5. 功效运行测试................................................17 6.结语........................................................20 参考文件......................................................21 附录..........................................................22 FTP用户端设计和实现 摘要:FTP是Internet上用来传送文件协议。它是为了我们能够在Internet上相互传送文件而制订文件传送标准,要求了Internet上文件怎样传送。经过FTP协议,我们就能够跟Internet上FTP服务器进行文件上传或下载。本文以实现一个简单易用FTP用户端为目标,经过分析FTP协议基础工作原理和FTP数据传输原理,研究怎样使用Java工具对FTP用户端进行设计,选择Java类库中FtpClient类来实现FTP用户端程序上传下载等关键功效,并用eclipse软件提供一个支持可视化编程开发环境,从而实现了对FTP用户端开发。 关键词:FTP协议 ,工作原理,FtpClient,上传下载 引言 现在,FTP服务已经是网络上广泛使用一个服务了,它是建立在FTP协议上用于网络环境下进行文件传输一个文件传输系统,几乎能够传输多种类型文件,如文本文件,声音文件,图像文件等。一个文件传输系统有服务器端程序和用户端程序共同组成,用户端程序提供用户操作界面并完成文件上传和下载。在网络应用中,FTP有着很关键地位,在Internet中一个十分关键就是资源,而多种多样资源大多数全部是放在FTP服务器中,为了取得这些资源,我们必需使用FTP用户端软件。现在流行有cuteFTP,WS_FTP,ByteCatcher,FTP Voyage等。为了方便用户使用,本文将介绍一个基于JavaFTP用户端程序设计和实现。 本文首先分析了FTP协议,FTP工作原理等,然后介绍了怎样使用Java工具来设计和实现一个简单FTP用户端。使用本FTP用户端,能够使用户轻松下载、上传网络资源。 2. FTP协议分析 2.1FTP工作原理 FTP(FileTransferProtocol),是文件传输协议简称。用于Internet上控制文件双向传输。同时,它也是一个应用程序。用户能够经过它把自己机器和世界各地全部运行FTP协议服务器相连,访问服务器上资源和信息。 FTP协议在TCP/IP协议栈中位置如表1: 表1 TCP/IP协议栈 HTTP FTP TELN SMTP DNS TFTP NMP 应用层 TCP UDP 传输层 IP 互联网络层 X25 ISDN LAN WLAN FDDI ATM 网络接口层 当开启FTP从远程计算机拷贝文件时,实际上开启了两个程序:一个当地机器上FTP用户端程序,它向FTP服务器提出拷贝文件请求。另一个是开启在远程计算机上FTP服务器程序,它响应请求把你指定文件传送到你计算机中。FTP采 用“用户端/服务器”方法,用户要在自己当地计算机上安装FTP用户端程序。 从根本上说,FTP协议就是在网络中多种不一样计算机之间根据TCP/IP协议来传输文件。FTP协议采取用户端/服务器(Client/Sever)模式,由FTP用户端程序和FTP服务器端程序组成。使用时,先开启FTP用户端程序和远程主机建立连接,然后向远程主机发出传输命令,远程主机在收到命令后就给响应,并实施正确命令。不过FTP有一个根本限制,那就是,假如用户在某个主机上没有注册取得授权,即没有用户名和口令,就不能和该主机进行文件传输。但匿名FTP服务器除外,它能够使用户和远程主机建立连接并以匿名身份从远程主机上拷贝文件,而无须是该远程主机注册用户。用户使用特殊用户名“Anonymous”或“guest”就可有限制地访问远程主机上公开文件。现在很多系统要求用户将Emai1地址作为口令,方便愈加好地对访问者进行跟综。出于安全目标,大部分匿名FTP主机通常只许可远程用户下载文件,而不许可上载文件。也就是说,用户只能从匿名FTP主机拷贝其需要文件而不能把文件拷贝到匿名FTP主机。另外,匿名FTP主机还采取了其它部分保护方法以保护自己文件不至于被用户修改和删除,并预防计算机病毒侵入。匿名FTP一直是Internet上获取信息资源最关键方法,在Internet成千上万匿名FTP主机中存放着无以计数文件,这些文件包含了多种多样信息、数据和软件。大家只要知道特定信息资源主机地址,就能够用匿名FTP登陆。 2.2 FTP工作模式 FTP采取C/S(用户端/服务器)模式进行通信,但和其它C/S模式网络通信协议又有一个很大区分。通常在进行HTTP通信或是TELNET通信时候,只需要一个端口进行通信。即用户端只需要连接一个端口进行数据通信。如TELNET默认端口是23,用户从头到尾全部只需使用这个端口。不过FTP通信除了有一个默认端口21之外,还需要其它端口。其中默认端口(21)关键进行控制连接,进行命令协议和服务器端响应码传输;另外一个非标准端口关键进行数据传输,如文件上载、下载等。至于非标准端口产生则要依据用户选择连接模式而定:假如用户选择是主动模式(PORT),则需要用户端提供给服务器一个IP地址和一个非标准端口;而假如用户采取被动模式(PASV),则服务器端需要提供给用户端一个IP地址和一个非标准端口。 下表是多个著名TCP端口号: 表2 TCP端口号 TCP端口号 关键字 描述 20 FTP-DATA 文件传输协议数据 21 FTP 文件传输协议控制 23 TELENET 远程登录协议 25 SMTP 简单邮件传输协议 53 DOMAIN 域名服务器 80 HTTP 超文本传输协议 110 POP3 邮局协议 119 NNTP 新闻传送协议 FTP中字节大小有两个:逻辑字节大小和用于传输字节大小。后者通常是8位 ,而前者可不一定是多少了。传输字节无须等于逻辑字节大小,也无须对数据结构进行解释。控制连接是建立在USER-PIT和SERVER-PI之间用于交换命令和应答通信链路。数据连接是传输数据全双工连接,传输数据能够发生在服务器DTP和用户DTP之间也能够发生在两个服务器DTP之间,FTP能够传输非连续文件,这些文件一部分称为页。服务器DTP代表一个传输过程,它通常处于“主动”状态,它和侦听端口建立数据连接,它还能够为传输和存放设置参数,并依据PI指令传输数据。当然,DTP也能够转入“被动”状态。服务器FTP进程,它是和用户FTP进程一起工作,它由PI和DTP组成。至于用户FTP进程则是由PI,DTP和用户接口组成。 具体工作模式图1所表示: FTP请求 用户 用户接口 服务器a FTP响应 用户a1 文件传输系统 文件传输系统 用户b2 数据连接 服务器 b 服务器-FTP 用户—FTP 图1FTP工作模式图 上图中用户PI开始控制连接,控制连接和Telnet协议很象。在开始阶段,标准FTP命令由用户PI产生并经过控制连接传送到服务器进程。服务器PI向用户PI返回标准应答。FTP命令指定数据连接参数和文件系统操作。用户DTP在特定数据端口侦听,服务器开始数据连接并以指定参数开始数据传输。数据端口无须在开始FTP命令机器上,但用户或用户FTP进程必需确定它在指定数据端口上侦听.这个数据连接是全双工。 2.3FTP传输模式 FTP协议任务是从一台计算机将文件传送到另一台计算机,它和这两台计算机所处位置、联接方法、甚至是是否使用相同操作系统无关。假设两台计算机经过ftp协议对话,而且能访问Internet,你能够用ftp命令来传输文件。每种操作系统使用上有某部分细微差异,不过每种协议基础命令结构是相同。FTP传输有两种方法:ASCII传输模式和二进制数据传输模式。 2.3.1 ASCII传输方法 假定用户正在拷贝文件包含简单ASCII码文本,假如在远程机器上运行不是UNIX,当文件传输时ftp通常会自动地调整文件内容方便于把文件解释成另外那台计算机存放文本文件格式。不过常常有这么情况,用户正在传输文件包含不是文本文件,它们可能是程序,数据库,字处理文件或压缩文件(尽管字处理文件包含大部分是文本,其中也包含有指示页尺寸,字库等信息非打印字符)。在拷贝任何非文本文件之前,用binary命令告诉ftp逐字拷贝,不要对这些文件进行处理。 2.3.2二进制传输方法 在二进制传输中,保留文件位序,方便原始和拷贝是逐位一一对应。即使目标地机器上包含位序列文件是没意义。比如,macintosh以二进制方法传送可实施文件到Windows系统,在对方系统上,此文件不能实施。假如你在ASCII方法下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢,也会损坏数据,使文件变得不能用。假如你知道这两台机器是一样,则二进制方法对文本文件和数据文件全部是有效。 3 FTP用户端总体设计 3.1设计目标及工具选 3.1.1 设计目标 FTP早已应用在网络各个方面,比如我们在访问网络上资源时,常常会碰到需要连接FTP服务器来下载,或你制作了一个网站,想要将其上传至服务器,让大家能够访问它,这个时候就会用到FTP用户端。即使平时使用windows自带IE浏览器即可实现对FTP服务器访问,不过IE只是个很粗糙FTP用户端。IE浏览器在6.0以下版本不支持PASV方法访问服务器,而且IE浏览器在登录FTP服务器时候,无法查看返回信息,在犯错时候,无法找到错误原因,所以在使用上很不方便。现在大多数FTP用户端软件全部是收费版,而且以英文版居多,使用上操作很复杂,现在流行有CoreFtp、AceFtp、FtpVoyager等,不过大多数用户并不习惯使用这些软件。本文所设计FTP用户端则适合大多数用户使用,界面设计很简单,使用户能够一目了然,而且含有FTP用户端基础功效,能够作为下载、上传文件工具来使用。 3.1.2 设计工具 程序设计中用到关键工具就是Java,Java是SUN企业开发一个面向对象新一代网络编程语言,它能够在多种不一样机器、操作系统网络环境中进行开发,含有解释型语言(如Basic语言)和编译型语言(如C语言)特征。Java摒弃了C++中多种弊大于利功效和很多极少用到功效,用Java开发程序能够在网络上传输,并运行于任何用户机上。使用Java语言能够方便设计出网络应用类程序,而且Java移植性很好,在 、其应用程序在多种机器上全部能无差异实施为了使FTP用户端能适应大多数平台下使用,我选择使用Java语言来实现。 3.1.3 ftpclient类 Java类库存在使它适合于一个不停发展环境。在类库中我们能够自由地加入新方法和实例变量而不会影响用户程序实施。而且Java经过接口来支持多重继承,使其比严格类继承含有更灵活方法和扩展性。在处理复杂事物时候,用到一个基础手段就是抽象。抽象目标就是区分事物之间本质和不一样,面向对象编程(OOP)实质就是利用类和对象来建立抽象模型。类表示了对象类别,是创建对象蓝本。建立一个事物抽象模型,本质上就是表示该事物性质和行为。使用类来建立抽象模型,是经过在类中定义变量和方法来实现。类中定义属性是一个可存放值变量,该变量代表着事物具体性质。 在J2SE中提供了和用户端编程相关Api,它就是.ftp.FtpClient类,FtpClient类封装了FTP协议相关指令和实现细节,提供了一系列方法,这些方法涵盖了几乎全部ftp功效使用FtpClient类设计FTP用户端程序能够让编程人员轻松地实现登录远程FTP服务器、浏览服务器上目录、设置传输协议、上传文件和下载文件等功效。 本文所使用FtpClient类结构方法和关键方法以下:1.PublicFtpClient(Stringhostname) 此结构函数利用给出主机名建立一条FTP连接,使用默认端口号。 2.PublicvoidopenServer(Stringhostname) 这个方法用于建立一条和指定主机上FTP服务器连接,使用默认端口号。 3.Publicvoidlogin(Stringusername,Stringpassword) 此方法利用参数username和password登录到FTP服务器。使用过Internet用户应该知道,匿名FTP服务器登录用户名为anonymous,密码通常见自己电子邮件地址。Publicvoidbinary():该命令可把传输格式设置为二进制格式。 3.2.1用户端功效模块 FTP用户端作为用户连接FTP服务器工具,需要含有部分基础功效模块,如连接、上传、下载等,其中最关键三大功效模块以下: 1、下载功效模块:连接用户指定FTP服务器,获取服务器目录下文件列表, 当用户选择项目为文件时,点击下载能够下载用户所需要文件。选定文件后提醒用户将文件存放在何处,用户选择存放区后开始下载任务。依靠FTP协议支持,用户下载文件没有类型和大小限制,即用户可已选择任何自己想要下载文件,经过FTP用户端进行下载。 2、上传功效模块:用户能够自行选择本机上存放文件,上传至FTP服务器。 在用户选择存放在服务器位置后,点击上传,选择所需要上传文件,即可将文件上传至服务器。 3、连接功效模块:将用户本机和指定IP地址连接,验证用户命和密码,在 FTP服务器上进行注册。 有了这三个基础功效模块,用户端基础应用功效即可实现。 3.2.2用户端界面设计 为了使用户能够方便使用FTP用户端,在设计中我将数据输入和信息显示整合在一个页面中,全部用户端仅包含一个关键窗口,窗口中分别有以下五个界面: 1、数据输入界面:用来让用户输入服务器地址,用户名,密码。 2、服务器文件信息显示界面:关键用来显示服务器下存放文件,方便用户清 楚了解服务器中存放了哪些文件。 3、上下载队列显示界面:显示正在下载或上传文件线程。 4、操作按钮界面:用户能够经过点击上传、下载、断开、关闭等按钮来实现客 户端具体操作。 5、信息显示界面:显示目前连接信息和上传下载是否成功信息。这五个界面能够使用eclipse工具下swing控件来实现,在布局时,将界面内各个元素整合在一个框架中。 设计主界面图2: 图2 用户端界面 3.3数据步骤图 3.3.1 用户端连接步骤图 运行用户端后,首先是连接服务器,需要输入服务器IP地址及用户名和密码点击连接按钮后开始连接服务器。 下图为用户端连接步骤图。 用户输入服务器地址及用户名和密码 连接服务器 发送用户名及 密码至服务器 在信息显示模块显示连接成功 是否连接成功 是 获取服务器文件列表 否 刷新服务器文件显示文件列表 在信息显示模块显示连接失败 图3 用户端连接步骤图 连接结果有两种,即图中显示连接失败和连接成功。 3.3.2 上传子模块步骤图 当用户点击上传按钮后,用户能够选择需要上传文件,并指定上传位置,将本机上文件上传至FTP服务器。下图为上传子模块步骤图。 点击上传按钮 弹出文件选择对话框 获取用户选择文件名 新建一个上传任务 登录到FTP服务器目标目录下 上传是否成功 弹出对话框显示上传成功 是 重新获取服 务器文件列表 更新服务器文件列表 否 清除线程 弹出对话框显示上传失败 图4 上传模块步骤图 上传结果有两种,上传失败和成功,失败时会提醒用户上传失败,原因可能是权限,假如成功上传,则提醒上传成功。 3.3.3 下载子模块步骤图 当用户在服务器文件列表中选择想要下载文件后,选择需要下载文件在本机上 存放位置,将服务器上文件下载至本机。 下图为上传子模块步骤图。 选择要下载文件 点击下载按钮 选择文件在本机存放位置 获取文件信息 将信息传送至任务 新建下载任务 登录到FTP服务器目标目录下 下载是否成功 弹出对话框显示下载成功 是 重新获取服务器文 件列表 更新服务器文件列表 否 弹出对话框显示下载失败 清除线程 图5下载模块步骤图 4 FTP用户端程序实现 4.1.1数据输入界面具体设计 该界面用来统计用来输入服务器站点,用户名和密码信息,然后将信息发送到 服务器进行验证,利用Jtextfiled构件来实现。用户端一共有4个文本输入框,分别为服务器地址输入框url,用户名输入框username,密码输入框password 和端口号port。在程序运行时,用户在输入框url中输入FTP服务器站点、用户在输入框username中输入用户名、用户在输入框password 中输入密码,用户在端口号输入框port中输入端口号。利用getTEXT()函数获取输入框中数据,将url中数据存放至ip 中,将username中数据存放至username中;假如用户没有在username中输入数据,则默认为用户使用匿名方法登录,将用户名设置为designpattern,password中数据则存放至password,如 果 用 户 没 有 在password 中输 入 数 据 , 则 默 认 设 置 为 designpattern。 JTextField类定义: JTextField url=new JTextField();服务器IP输入框 JTextField username=new JTextField();用户名输入框 JTextField password=new JTextField();密码输入框 JTextField port=new JTextField();端口号输入框 4.1.2服务器文件信息显示界面具体设计 该界面作用是是显示服务器文件列表,利用Jscrollpane构件来实现。在用户 端主界面创建一个Jscrollpane,命名为ftpFileScrollPane1,并置于主界面中间,该表格包含三个数据项:文件名file,文件大小filesizes,修改日期filedates,使用一个二维数组mydata来存放这三个数据。当用户端连接上服务器时,表格数据自动更新,关键功效使用setTableData()函数实现。当服务器连接时首先清除文件列表信息,利用removeAllElements()函数实现,然后切换到目前目录,使用ftpClient类中cd命令实现,再使用list命令前目录下数据、包含目录和文件名。 JScrollPane类定义: JScrollPane ftpFileScrollPane1=newJScrollPane(ftpFileInfosTable); 4.1.3上下载队列显示界面和信息显示界面具体设计 这两个模块是信息显示模块,使用JScrollPane和JTextArea构件实现。其中taskScrollPan显示上传下载进程信息,consoleScrollPane显示连进程开始 或 结束 信 息 , 将 信 息 显示 文 本 域consoleTextArea放在 滚 动条 面 板consoleScrollPane中,而且设置为不可编辑。当客 户 端 连 接 成 功 或 失 败 ,上 传 文 件 或 下 载 文 件 时 , 利 用 函 数taskScrollPane.append()和consoleTextArea.append()在对应区域显示任务信息。 JScrollPane类定义: JScrollPanetaskScrollPane=newJScrollPane(taskList); JScrollPaneconsoleScrollPane=newJScrollPane(consoleTextArea); 4.1.4操作按钮模块具体设计 操作按钮使用JButton构件实现,用户端共有连接、上传、下载、断开、关闭、 上一级目、录刷、新重命名8个操作按钮,分别命名为connectButton、closeButton、refreshButton 、deleteButton 、 downloadButton 、 uploadButton renameButton 、upDirButton。 JButton类定义: private JButton connectButton=new JButton("连接"); private JButton closeButton=new JButton("断开连接"); private JButton refreshButton =new JButton("刷新"); private JButton deleteButton = new JButton("删除"); private JButton downloadButton = new JButton("下载"); private JButton uploadButton = new JButton("上传"); private JButton renameButton = new JButton("重命名"); private JButton upDirButton = new JButton("上级目录"); 每个按钮全部有自己响应事件来实现各自功效,分别以下 连接:connectButton.addActionListener( )... 上传:uploadButton.addActionListener(new ActionListener()... 下载:downloadButton.addActionListener(new ActionListener()... 删除:deleteButton.addActionListener(new ActionListener()... 断开:closeButton.addActionListener(new ActionListener()... 上一级目录:upDirButton.addActionListener(new ActionListener()... 刷新:refreshButton.addActionListener(new ActionListener()... 重命名:renameButton.addActionListener(new ActionListener()... 各按钮在定义各自响应后,用户在点击这些按钮时,会做出对应处理,开启 对应进程。 4.2功效模块实现 4.2.1连接服务器 用户端中FtpBean类中connect方法用来实现连接服务器功效,在Java中实现这一功效是借助FtpClient类完成,首先是使用FtpClient类openServer(stringserver)方法打开远程FTP服务器,然后使用FtpClient类login(user,password)方法登录服务器。登录远程FTP服务器有两种方法,一个是注册用户登录,另一个是以匿名方法登录。使用第一个方法登录需要拥有该服务器注册用户名和密码,匿名方法则是以designpattern作为用户名来登录。类ftpClient提供了以下两个可用于打开和FTP服务器之间连接方法 1.openServer(Stringhostname)用于建立一条和指定主机上FTP服务器连接,使用默认端口号:21 2. connect(String dir, String hostname, int port, String username,String passwd) 用于建立一条和指定主机、指定端口上FTP服务器连接。本文所使用是第一个方法进行连接,首先定义4个字符串,命名为ip,username,port, password,分别用来接收来自数据输入界面数据。然后将接收到数据发送至服务器验证,验证成功则使用对话框函数在信息显示界面中提醒连接成功,失败则显示连接失败。 4.2.2上传文件 用户端中实现上传功效文件为FtpBean类中uploadFile函数来实现。当用户选择文件上传时,用户端会创建一个到FTP服务器连接,一样使用ftpClient类openServer()方法和login()登录到服务器,并切换到用户选择目标目录下,把传输格式设置为二 进 制 格 式 , 将 本 地 文 件 上 传 至FTP 服 务 器 。 上 传 结 束 后 利 用ftpClient.closeServer()函数断开,并更新数据表格和清除任务线程。通常情况下FTP服务器为了确保其安全性,权限中会设置是否许可用户上传文件。上传失败时,犯错处理会在对话框面板中显示出文件上传失败。上传具体代码见附录。 4.2.3下载文件 用户端下载文件由为FtpBean类中downloadFile函数来实现。假如用户想要下载列表中某一个文件,首先判定项目标类型是否是文件,假如是文件,则得到下载文件名并下载文件,假如选中是目录,则不能下载。用户选择好要下载文件后,用户端打开服务器连接端口,使用ftpClient类openServer()方法和login()登录到服务器,把传输格式设置为二进制格式,使用ftpClient.get()函数取得文件名,下载并保留至用户指定路径。下载完成后ftpClient.closeServer()关闭和服务器连接并清除线程。当用户下载失败时,犯错处理会在信息显示面板中显示下载犯错。下载具体代码见附录。 5 功效运行测试 为了验证程序是否能正常运行,我选择连接IP为122.206.79.129FTP服务器来测试。运行环境为windows7+eclipse。 首先是服务器连接验证: 在服务器地址中输入122.206.79.129,在用户名中输入designpattern,在密码栏中输入designpattern,点击连接按钮后,出现结果以下图: 结果显示连接功效实现,服务器文件信息列表中显示了ip为122.206.79.129FTP服务器下文件夹列表,信息显示中显示了正确连接信息。然后是下载文件功效测试,选择程序设计模式封页.doc文件,点击下载选择保留至D盘,图: 继续点击保留按钮,下载任务中成功添加下载任务,文件下载完后,图: 最终是上传功效测试。先在本机上创建一个名叫“程序设计模式封页.doc”文件,选择上传至跟目录下,点击上传,显示图: 为了验证是否真上传至FTP服务器,我用网上邻居访问了IP为122.206.79.129FTP服务器,结果图: 文件确实上传成功。至此,功效验证已经完成! 6 .结语 FTP目标是提升文件共享性和可靠高效地传送数据,而FTP用户端作用是使用户方便连接和访问FTP服务器。本文实现了一个简单易用FTP用户端,在分析FTP协议基础工作原理和FTP数据传输原理基础上,具体介绍了怎样使用Java工具对FTP用户端进行设计,选择Java类库来实现FTP用户端程序上传下载等关键功效,并用eclipse软件提供一个支持可视化编程开发环境,从而实现了对FTP用户端开发。即使现在有很多实现FTP用户端程序技术和方法,诸如Winsock控件和DelphiIndy组件等,不过使用Java在程序实现上显得愈加简捷灵活,并含有很好可扩充性和可移植性,在本文中使用方法也是比较便捷和高效。 参考文件 [1]杨锡林、张燕等.Java编程高手.北京大学出版社,12月第一版 (1):169~173. [2]叶新铭等译.计算机网络(原书第二版).机械工业出版社,6月 : 端到端协议242-283. [3]夏先波等.JAVA+JDK实例开发宝典.电子工业出版社,第一版:第13 章.网络编程281~289. [4] J. Reynolds. RequestforComments:959:FileTransferProtocol,October1985 , :THEFTPMODEL7~8. [5]叶俊民.软件工程.清华大学出版社,6月第一版:第3章.软件需求 分析基础51~73. [6]Horstmann,C.S,Cornell,G.Java2关键技术.机械工业出版社,3 月第一版:第6章.高级Swing279~385 [7] 杨淑萍 基于JavaFTP用户端程序设计和实现 .现代计算机. [8] 谢希仁 计算机网络(第五版) 电子工业出版社 附录: 程序源码 ,关键关键代码: FTPFrame.java public void connect()//连接FTP服务器 { String s=ftp.connect("/", url.getText().toString(), Integer.parseInt(port.getText()), username.getText().toString(), password.getText().toString()); status.setText(s); update(); if(s.equals("Success")) { time = new Date(); out.println(time+" 登陆服务器:"+url.getText());展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




FTP客户端设计和实现.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2999191.html