V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuyl
V2EX  ›  Java

java 通过 ftp 连接 windows 下的 serv-u,怎么实现目录的遍历?

  •  
  •   xuyl · 2015-06-16 09:06:38 +08:00 · 2840 次点击
    这是一个创建于 3451 天前的主题,其中的信息可能已经有所发展或是发生改变。
    //若ftp服务端是linux下的vsftp,下面的代码可以实现遍历
    String ftpDirectory = "/data/ftp/xxx/";
    try {
        DataInputStream dis = new  DataInputStream(ftpClient.nameList(ftpDirectory));
        String filename = "";
        while ((filename = dis.readLine()) != null) {
                    System.out.println(filename);
        }
    } catch (Exception e) {
                e.printStackTrace();
    }
    

    而在windows下,不知道是否目录写法的原因

    String ftpDirectory = "/xxx/"; //这里是把ftp帐号的目录设在D:\www下,所以都用相对目录来设置ftp目录的。
    其他同,Run一下,Console下面报错:NLST /: 550 No Files found.

    求指导。

    1 条回复    2015-06-16 09:10:42 +08:00
    iam36
        1
    iam36  
       2015-06-16 09:10:42 +08:00
    你要参考两个来源:

    1、FTP的RFC协议,应该是ls或者dir,然后按属性处理
    2、SERV-U的command扩展,具体参照到其帮助文档
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5744 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 03:06 · PVG 11:06 · LAX 19:06 · JFK 22:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.