how to delete file from ftp server using java?

蓝咒 提交于 2019-12-21 07:26:26

问题


How can I delete a file from an ftp server using a java program? I am successfully able to upload files on the ftp using the following code:

public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub
    String s = "ftp://username:password@ftpclient:21/text.txt;type=i";
    URL u = new URL(s);
    URLConnection uc = u.openConnection();
    BufferedOutputStream bos = new BufferedOutputStream(uc.getOutputStream());
    bos.write(67);
    bos.close();
    System.out.println("Done");
}

But how do i delete files from this ftp server? Any help will be greatly appreciated......... Thanks in advance


回答1:


You can use Apache FTPClient to do this and all other commands on FTP. Use it something like this:

...
FTPClient client = new FTPClient();
client.connect(host, port);
client.login(loginname, password);
client.deleteFile(fileNameOnServer);
client.disconnect();
...



回答2:


Check out Apache commons-net. It has an FTP client (among other stuff).




回答3:


The FTP command to remove a file is RMD, I think you could use:

String s = "ftp://username:password@ftpclient:21/text.txt;type=i";
URL u = new URL(s);
URLConnection uc = u.openConnection();
PrintStream ps = new PrintStream((uc.getOutputStream()));
ps.println("RMD " + <myFile>.getPath());
ps.close();



回答4:


Java's URL and URLConnection do not have support for deletion of resources. (I'm even surprised that upload works).

So you'll either have to use an FTP client library (like FTPClient from Apache Commons Net), or have to implement the necessary parts of the client side of the FTP protocol yourself.



来源:https://stackoverflow.com/questions/6790783/how-to-delete-file-from-ftp-server-using-java

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!