org.apache.commons.net.ftp Class FTPClient

        基本介绍:

        FTPClient类封装了上传文件到FTP服务器和从FTP服务器下载文件的所有必需的功能。这个类关注和FTP服务器底层的细节交互,提供了便捷的上层的接口。就像SocketClient类的所有派生类一样,在做任何其他事情之前都必须首先以connect的方式连接到服务器,并且在结束和服务器的交互之后要最终关闭连接。然后你需要检查FTP的响应代码来确定连接是否成功。举例如下:

       

        唯一的实时连接之后你需要立即检查应答代码(因为连接的返回类型是void)。在FTPClient中的所有的FTP命令都遵循一个约定,就是他们要么返回一个Boolean值,要么返回一个其他的值。boolean方法在FTP服务器应答成功的时候返回true,在FTP服务器应答错误或失败结果的时候返回false。返回值不是boolean类型的方法返回一个包含由FTP命令产生的高层数据的值,或者在应答错误或失败结果的情况下返货null。如果你想访问导致成功或失败的FTP应答代码,你必须在应答成功或直白之后调用getReplyCode方法。

        构造方法详解:

        FTPClient()

        默认的构造方法。创建一个新的FTPClient实例,数据连接模式设置为ACTIVE_LOCAL_DATA_CONNECTION_MODE,文件类型设置为FTP.ASCII_FILE_TYPE,文件格式设置为FTP.NON_PRINT_TEXT_FORMAT,文件结构设置为FTP.FILE_STRUCTURE,传输模式设置为FTP.STREAM_TRANSFER_MODE.

      

        方法详解:

        protected Socket _openDataConnection_(int command, String arg) throws IOException

        与FTP服务器建立一个数据连接,如果成功的话返回一个Socket。如果重置偏移量(restart offset)被setRestartOffset(long)方法设置,在这个数据连接建立之前一个以这个偏移量(offset)为参数的REST命令会作用于该服务器。主动模式连接也会导致本地端口命令触发。

        参数:

        command     FTP命令发送的文本表示。

        arg    FTP命令的参数。如果该参数null,则该命令以无参数方式发送。

        返回:

        将返回与这个已建立的数据连接对应的Socket。在建立和初始化连接的期间如果FTP协议报告了错误,那么将返回null。      


        protected void _connectionAction() throws IOException

        从TelnetClient类复制描述。处理特殊的连接请求。该方法重写了父类——FTP的同名方法。


        public void setDataTimeout(int timeout)

        在从该连接读取数据时,以毫秒为单位类设置超时时间。这个超时时间将在数据连接建立之后立即被设置。

        参数:

        timeout     在打开数据连接Socket时默认此毫秒单位数的超时时间。


        public void setParserFactory(FTPFileEntryParserFactory parserFactory)

        设置用于创建解析器工厂提供的工厂对象。

        参数:

        parserFactory    用来创建FTPFileEntryParsers的工厂对象。


        public void disconnect() throws IOException

        关闭与FTP服务器的连接并且恢复连接参数默认值。该方法重写父类FTP的方法。


        public boolean login(String username, String password) throws IOException

        用提供的用户名和密码登录到FTP服务器。

        参数:

        username   用于登录的用户名。

        password    用于登录的密码。

        返回:

        登录成功返回true,失败返回false。


        public boolean login(String username, String password, String account) throws IOException

        用提供的用户名,密码和账户登录到FTP服务器。如果这个服务器没有账户,则只需要用户名和密码,账户参数不需要用到。

       参数:

        username   用于登录的用户名。

        password    用于登录的密码。

        account    用于登录的账户。

        返回:

        登录成功返回true,失败返回false。


        public boolean logout() throws IOException

        通过发送QUIT命令来退出FTP服务器。

        返回:

        成功返回true,失败返回false。


        public boolean changeWorkingDirectory(String pathname) throws IOException

        变换当前FTP的工作路径。

        参数:

        pathname    新的当前工作路径。

        返回:

        成功返回true,失败返回false。


        public boolean changeToParentDirectory() throws IOException

        将当前的工作路径切换到父路径。

        返回:

        成功返回true,失败返回false。


        public boolean storeFile(String remote, InputStream local) throws IOException

        从指定的输入流中输入,并以指定的名称将文件保存在服务器中。这个方法不能关闭给定的输入流。如果当前的文件类型是ASCII,文件中行分隔符被透明转换成NETASCII格式(即,你不需要指定一个特殊的输入流来做此事)。

        参数:

        remote    给定将要存放在服务器上的文件名。

        local    本地能够读取文件的输入流。

        返回:

        成功返回true,失败返回false。


        public boolean rename(String from, String to) throws IOException

        更改远程文件名。

        参数:

        from    需要更改的远程文件名。

        to    远程文件的心文件名。

        返回:

        成功返回true,失败返回false。


        public boolean deleteFile(String pathname) throws IOException

        删除服务器上的指定文件。

        参数:

        pathname    要删除文件的路径名。

        返回:

        成功返回true,失败返回false。


       






















       
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值