Apache Commons Net FTPClient and listFiles()

后端 未结 3 1450
无人共我
无人共我 2020-11-30 03:25

Can anyone explain me what\'s wrong with the following code? I tried different hosts, FTPClientConfigs, it\'s properly accessible via firefox/filezilla... The problem is I a

相关标签:
3条回答
  • 2020-11-30 03:32

    Only using enterLocalPassiveMode() did not work for me.

    I used following code, which worked.

        ftpsClient.execPBSZ(0);
        ftpsClient.execPROT("P");
        ftpsClient.type(FTP.BINARY_FILE_TYPE);
    

    Complete example is as below,

        FTPSClient ftpsClient = new FTPSClient();        
    
        ftpsClient.connect("Host", 21);
    
        ftpsClient.login("user", "pass");
    
        ftpsClient.enterLocalPassiveMode();
    
        ftpsClient.execPBSZ(0);
        ftpsClient.execPROT("P");
        ftpsClient.type(FTP.BINARY_FILE_TYPE);
    
        FTPFile[] files = ftpsClient.listFiles();
    
        for (FTPFile file : files) {
            System.out.println(file.getName());
        }
    
    0 讨论(0)
  • 2020-11-30 03:44

    Found it!

    The thing is you want to enter passive mode after you connect, but before you log in. Your code returns nothing for me, but this works for me:

    import org.apache.commons.net.ftp.FTPClient;
    import java.io.IOException;
    import org.apache.commons.net.ftp.FTPFile;
    
    public class BasicFTP {
    
        public static void main(String[] args) throws IOException {
            FTPClient client = new FTPClient();
            client.connect("c64.rulez.org");
            client.enterLocalPassiveMode();
            client.login("anonymous", "");
            FTPFile[] files = client.listFiles("/pub");
            for (FTPFile file : files) {
                System.out.println(file.getName());
            }
        }
    }
    

    Gives me this output:

    c128
    c64
    c64.hu
    incoming
    plus4
    
    0 讨论(0)
  • 2020-11-30 03:51

    usually the annonymous user doesn't need a password, try

    client.login("anonymous", "");
    
    0 讨论(0)
提交回复
热议问题