使用org.apache.commons.net.ftp.FTPClient;
访问ftp://ftp.turbolinux.com.cn/pub/Turbolinux/上的内容
FTP登录ftp.turbolinux.com.cn都没问题
但调用listFiles(“/pub/Turbolinux/”);
获取的文件数组的长度总是0
dir随便给个目录也是这样的结果
感觉好像是目录名错误
但试了"/pub/Turbolinux/”   "pub/Turbolinux/”  "/pub/Turbolinux” "pub/Turbolinux” 都不行
望高手指点一下

解决方案 »

  1.   

    最好通过客户端登陆到ftp上,看看/pub/Turbolinux/目录是否存在,找个确定的目录来试试
      

  2.   

    对策:
    检查登录状态;
    list 根目录看看什么结果;
      

  3.   

    在浏览器中输入ftp://ftp.turbolinux.com.cn/pub/Turbolinux/可以查看目录
    我把代码贴出来吧public class ToolFTP {    
       
        private FTPClient ftpClient = new FTPClient();    
     
        private String hostName = "ftp.turbolinux.com.cn";     
        private String userName = "anonymous"; 
        private String password = "anonymous"; 
        private String remoteDir = "/pub/Turbolinux";    
        
        private void login() {    
            try {    

    ftpClient.connect(hostName);// 链接到ftp服务器
    System.out.println("连接到ftp服务器:" + hostName + " 成功..开始登录");
    ftpClient.enterLocalPassiveMode();
    ftpClient.login(userName, password);// 登录.用户名 密码
    int reply = ftpClient.getReplyCode();
    if (FTPReply.isPositiveCompletion(reply)) {
    System.out.println("登录成功.");
    }         
                
                String[] fileNames = ftpClient.listNames("remoteDir");    
                System.out.println("目录" + remoteDir + "下的文件:");    
                if(fileNames != null) {    
                    for(int i=0;i<fileNames.length;i++){                        
                        System.out.println(fileNames[i]);    
                    }    
                }    
                System.out.println("完成");        
            } catch (Exception e) {    
                e.printStackTrace();    
            } finally {                
                try {    
                    ftpClient.disconnect();    
                } catch (IOException ioe) {    
                    ioe.printStackTrace();    
                }    
            }    
        }    
            
        public static void main(String[] args) {    
            ToolFTP ToolFTPs = new ToolFTP();    
            ToolFTPs.login();    
        }    
    }