Java - eliminar fichero por ftp

   
Vista:
Imágen de perfil de Charly

eliminar fichero por ftp

Publicado por Charly cdum77@hotmail.com (118 intervenciones) el 26/01/2018 09:46:21
Tengo escrito el código de una aplicación Java para manejar un fichero txt mediante ftp (subir, descargar, renombrar y eliminar del servidor).
Me funciona todo, excepto el eliminar del servidor.
Este es el código que tengo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import java.io.*;
import org.apache.commons.net.ftp.*;
public class ClienteFTP{
	public static void main(String[] args){
		FTPClient cliente=new FTPClient();
		String servidor="localhost";
		String user="alu";
		String pasw="123";
		try{
			System.out.println("Conectandose a: "+servidor);
			cliente.connect(servidor);
			boolean login=cliente.login(user,pasw);
			String direc="/htdocs/FTPfiles/";
			if(login){
				//subir fichero
				cliente.changeWorkingDirectory(direc);
				cliente.setFileType(FTP.BINARY_FILE_TYPE);
				//stream de entrada con el fichero a subir
				BufferedInputStream in=new BufferedInputStream(new FileInputStream("C:\\Users\\cdum7\\Documents\\texto.txt"));
				if(cliente.storeFile("texto.txt",in)){
					System.out.println("Fichero subido...");
				}else{
					System.out.println("No se ha podido subir el fichero...");
				}
				//renombrar fichero
				direc="/htdocs/FTPfiles/";
				cliente.changeWorkingDirectory(direc);
				if(cliente.rename("texto.txt","texto1.txt")){
					System.out.println("Fichero renombrado...");
				}else{
					System.out.println("No se ha podido renombrar el fichero...");
				}
				//descargar fichero
				direc="/htdocs/FTPfiles/texto1.txt";
				cliente.changeWorkingDirectory(direc);
				//stream de salida para recibir el fichero descargado
				BufferedOutputStream out=new BufferedOutputStream(new FileOutputStream("C:\\Users\\cdum7\\Desktop\\texto1.txt"));
				if(cliente.retrieveFile("texto1.txt",out)){
					System.out.println("Fichero descargado...");
				}else{
					System.out.println("No se ha podido descargar el fichero...");
				}
				//eliminar fichero
				direc="/htdocs/FTPfiles/texto1.txt";
				if(cliente.deleteFile(direc)){
					System.out.println("Fichero eliminado...");
				}else{
					System.out.println("No se ha podido eliminar el fichero...");
				}
				in.close();
				out.close();
				cliente.logout();
				cliente.disconnect();
			}
		}catch(IOException ioe){
			ioe.printStackTrace();
		}
	}
}
He buscado por internet y el método para borrar esta bien.
En el tema de permisos es donde estoy más pez y puede que ese sea el problema, pero no lo se.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

eliminar fichero por ftp

Publicado por Tom (1188 intervenciones) el 26/01/2018 11:21:08
Estarías menos pez si leyeras algo sobre el protocolo ftp.
Yo probaría a dividir el delete en dos pasos, primero cd al directorio y luego delete sin path.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Revisar política de publicidad