How to get a list of files from the FTPserver?
As know FTP is a reliable protocol used for transferring files over the Internet. Though it is not a secure protocol, and all the data is transmitted in clear text. But it is reliable enough protocol and send the data from a sender to receiver over Internet.
The code talks about getting the names of the all the files you wish to read from on a FTP server using the following process:
- In Java, we will use the FTPClient object to read files from FTP server. The class, ‘org.apache.commons.net.ftp.FTPClient’, needs to be imported to create an instance of FTPClient.
- The connect() method is called for the FTPClient object, with the URL as the parameter, to establish a connection with.
- Using the login() method send the credentials – user-name and password. For correct credentials and a successful login, true is returned which allows user to access files on the server.
- After the successful login, use the listNames() method to fetch the names of all the files in the current working directory. The list returned will be an array which can be iterated over to read the names.
- Since the login was a success, it requires a logout() after the reading of filenames has been done. Lastly, the disconnect() method is called to end the relation with the connected FTP server.
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.
This article is contributed by Ritika. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.