style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Subir un archivo por FTP librería commons net (nuevamente otro ejemplo).

/*No olvides darle permisos a tu firewall de windows o a tu antivirus antes de ejecutar la aplicación, por que si no lo haces te arrojará un error en el socket Exception y unas cuantas lineas de errores, simplemente desactiva o da permisos en el cortafuegos y con esto estará funcionando de maravilla la aplicación. Hasta luego y espero que les sirva de algo esta pequeña ayuda. :D */

package subiendo_archivo;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;

public class Subiendo_archivo
{

public static void main(String[] args)
{
FTPClient client = new FTPClient();
try
{
client.connect("tuservidor.com");

boolean login = client.login("ususario", "contraseña");
if (login)
{
System.out.println("Iniciando sesión Satisfactoriamente");
int replay = client.getReplyCode();
if (FTPReply.isPositiveCompletion(replay))
{
File file = new File("\\La ruta del archivo");
FileInputStream input = new FileInputStream(file);
client.setFileType(FTP.BINARY_FILE_TYPE);

client.enterLocalPassiveMode();
System.out.println("Subió satisfactoriamente el archivo");

if (!client.storeFile(file.getName(),input))
{
System.out.println("Subida fallida!");
}
input.close();
}
// Cuando cierras sesión el método logout regresa "true".
boolean logout = client.logout();
if (logout)
{
System.out.println("Salir del servidor FTP");
}
}
else
{
System.out.println("Falló inciar sesión");
}
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
// Cierra la conexión al servidor FTP
client.disconnect();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
}

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Hola, gracias por este

Hola, gracias por este aporte, lo probé y no me funcionó, tu ve q hacer unos cambios para que funcione, agregarle el puerto(21) a mi conexión y cambiar de modo pasivo a modo activo

client.connect("tuservidor.com", 21);
     .
     .
     .
client.enterLocalActiveMode();

no se si es correcto eso, pero me funcionó con esos cambios.

Imagen de lalo200

Buen aporte

Buen aporte, y si efectivamente como dices es recomendable colocarlo así como puerto 21, pero si me parece raro que no te funcione, conmigo si funciona a la perefección, de cualquier forma gracias por la recomendación.

sirve para subir un directorio

ami me gustaría subir un directorio no un archivo esto sirve para eso gracias

Imagen de francisco.santiagoj

Gracias!!

Excelente aporte

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">