Apache Commons Net FTPClient and listFiles()

后端 未结 3 1463
无人共我
无人共我 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: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
    

提交回复
热议问题