我想通过客户端连接FTP服务器,然后移动某个文件到指定目录下。
或者复制到指定目录下。比如一个a.txt文件在up/aa目录下,发送一个命令将其移动到up/bb目录下。FTP的客户端工具,如cuteftp和flashfxp都可以完成这种功能,我想java的ftp客户端api也应该有能实现这个功能的jar包吧。另外不知道大家都用那个FTP的API,可能SUN和jakarta的比较多吧,但是那两个好像不能完成移动文件的功能。

解决方案 »

  1.   

    在sun.net.ftp里面有个FtpClient类,可以用,不过用反编译工具打开后的源代码没有注释
    你说的问题,好像要自己写代码实现,在ftp里面不能复制文件夹,只能复制文件,所以你要移动文件好像要自己实现
      

  2.   

    楼上说要自己实现,可是对我来说可能比较困难。还要了解FTP原始命令及协议。既然封装的包里能提供下载的方法,应该有能提供移动的方法吧。如果有这样一个包,省却了N多麻烦
      

  3.   

    ftp移动文件和重命名文件是同一个命令rename [filename] [new/path/to/filename]sun.net.ftp的FtpClient就可以处理一般的ftp操作了
      

  4.   

    谢谢楼上二位,非常感谢。
    我试了一下,假如a.txt文件在up/aa下,我在aa下再建一个bb目录,
    用命令client.rename("a.txt","bb/a.txt");已经可以移动了,
    但是目的目录不是aa文件夹的子目录应该怎么写呢??我试了client.rename("a.txt","ip/bb");和client.rename("a.txt","../bb");等几个写法,都没有成功。
    怎么写才能从根目录写起呢??3q