2011-07-22 125 views
13

¿Cómo puedo eliminar un archivo de un servidor ftp usando un programa java? estoy con éxito capaz de cargar archivos en el ftp utilizando el siguiente código:cómo eliminar un archivo del servidor ftp usando java?

public static void main(String[] args) throws IOException { 
    // TODO Auto-generated method stub 
    String s = "ftp://username:[email protected]: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"); 
} 

Pero ¿Cómo elimino archivos del servidor FTP? Cualquier ayuda será muy apreciada ......... Gracias de antemano

Respuesta

19

Puede utilizar Apache FTPClient hacer esto y todos los otros comandos de FTP. Se usa algo como esto:

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

+1 para el enlace de javadoc (además usted respondió 54 segundos antes :) :) – pap

+0

Gracias por su respuesta. Pero estoy buscando una forma de hacerlo sin el ftpclient. Cualquier ayuda será muy apreciada – Shantanu

+0

¿Por qué querría implementar el protocolo FTP usted mismo, cuando hay numerosos módulos preparados que lo hacen por usted? No reinventar la rueda. – pap

2

El comando FTP para eliminar un archivo es RMD, creo que se podría utilizar:

String s = "ftp://username:[email protected]: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(); 
+0

¿qué quieres decir con .getPath() ??? – Shantanu

+0

representa el archivo que desea eliminar. – chepseskaf

1

URL y URLConnection de Java no tienen soporte para la eliminación de los recursos. (Incluso estoy sorprendido de que la carga funcione).

Por lo tanto, tendrá que utilizar una biblioteca de cliente FTP (como FTPClient de Apache Commons Net), o tendrá que implementar las partes necesarias del lado del cliente del protocolo FTP usted mismo.

Cuestiones relacionadas