Foros del Web » Programación para mayores de 30 ;) » Java »

Programa para transferir archivos de PC a PC

Estas en el tema de Programa para transferir archivos de PC a PC en el foro de Java en Foros del Web. Como hago para hacer un programa que pueda instalar en dos máquinas y pasarme archivos entre estas máquinas. Por ejemplo, quiero hacerme una aplicación que ...
  #1 (permalink)  
Antiguo 13/06/2009, 15:04
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 7 meses
Puntos: 0
Busqueda Programa para transferir archivos de PC a PC

Como hago para hacer un programa que pueda instalar en dos máquinas y pasarme archivos entre estas máquinas.

Por ejemplo, quiero hacerme una aplicación que trabaje así:
- Una GUI en una PC con opción a ver los archivos y carpetas de una ubicación específica de otra PC.
-La otra PC tambien tiene el programa y puede ver los archivos y carpetas de igual forma.
-Y lo principal, que además de poder ver el contenido, debo de poder copiar uno o varios de esos archivos desde aquella máquina.

Se que tengo que trabajar con sockets, por el momento ese no es el problema.

Lo que pasa es que no conozco ningún método en java para poder mostrar el contenido de una carpeta de forma visual, en un jForm.
Como hago eso?

conforme vaya avanzando voy a ir posteando los resultados...
  #2 (permalink)  
Antiguo 14/06/2009, 12:20
 
Fecha de Ingreso: mayo-2009
Mensajes: 36
Antigüedad: 15 años
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

hola;
lo que tienes que hacer primero es una conexion atraves de sockets, ahora paraesto pues tienes que estab;ecer la ip para cada programa, para que s epuedan ver entre ells, despues ahy una utilidad que se llama datagramas con esa utilidad puedes hacer eso que necesitas de pasar archivos, nunca lo eh hecho pero segun el tutorial que vi de esa manera se hace XD.

Espero haber ayudado en algo.
  #3 (permalink)  
Antiguo 15/06/2009, 01:00
(Desactivado)
 
Fecha de Ingreso: abril-2009
Mensajes: 113
Antigüedad: 15 años
Puntos: 1
Respuesta: Programa para transferir archivos de PC a PC

Es que lo que quieres hacer ya está inventado. Se llama FTP. Yo al menos me ahorraria tener que programar el servidor. directamente le pondria un servidor de FTP y luego, siguiendo el protocolo si acaso me curraria el cliente.

Un saludo.
  #4 (permalink)  
Antiguo 15/06/2009, 08:02
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

itubal...
Debo de programar todo

cororo...
El paso de archivos me sale bien utilizando ObjectInputStream y ObjectOuputStream


tengo nuevo problema
  #5 (permalink)  
Antiguo 15/06/2009, 08:13
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

TENGO ESTE CÓDIGO:




Código:
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Hilos().setVisible(true);                
            }
        });
//CREO UN HILO QUE ME PERMITA ENLAZARME AL PUERTO
        Thread con = new Thread(new Conectar());
        con.run();
    }
    
    private void mostrarMensaje(String mensajeAMostrar){
               jTextArea1.setText(mensajeAMostrar);  
   } 

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextArea jTextArea1;
    // End of variables declaration                   

    
    
    public static class Conectar implements Runnable{
        Hilos hilito = new Hilos();
        public void run(){
            try {
                serverSocket = new ServerSocket(4444);
                hilito.mostrarMensaje("Enlazado con éxito al puerto");
            } catch (IOException ex) {
                hilito.mostrarMensaje("Error al enlazar. Puerto Ocupado");
            }
        }
    }
Esto es un pedazo de código que te genera NetBeans al crear un jForm.

Lo importante aqui son las clases MAIN, CONECTAR, Y la función MOSTRARMENSAJE.

El problema es que cuando corro el programa debería imprimirme lo que le mando a la función MostrarMensaje, y no lo hace.
Que hago para solucionar eso?

Gracias
  #6 (permalink)  
Antiguo 15/06/2009, 11:41
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

Vamos, se que pueden ayudarme, pliz
  #7 (permalink)  
Antiguo 15/06/2009, 11:42
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

alguien aqui ah trabajado con sockets que me deje su msn para sacarle toda la info que necesito?
  #8 (permalink)  
Antiguo 19/09/2009, 18:10
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

Amigo si me das todo lo que tienes hecho, yo te puedo ayudar, soy ingeniero telematico y si quieres te ayudo pero necesito todo muy bien especificado y decirme para que es cada liea de cÓdigo y te ayudo...ok.
  #9 (permalink)  
Antiguo 19/09/2009, 19:37
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 21 años, 5 meses
Puntos: 37
Respuesta: Programa para transferir archivos de PC a PC

Tambien podrias hacerlo si las computadoras comparten una red local, que se vieran las pcs con UNC, no tengo codigo a la mano de ejemplo, pero podrias copiar de:
\\COMPUTADORA_A\carpetaOrigen
hacia
\\COMPUTADORA_B\carpeta destino.


Saludos
  #10 (permalink)  
Antiguo 27/09/2009, 04:12
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
De acuerdo Respuesta: Programa para transferir archivos de PC a PC

Buenas tardes amigo yo estoy diseñando una misma aplicación cualquier cosa contácteme a través del correo electrónico [email protected] para compartir información de la aplicación.
  #11 (permalink)  
Antiguo 31/03/2011, 17:28
 
Fecha de Ingreso: agosto-2010
Mensajes: 153
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Programa para transferir archivos de PC a PC

Cita:
Iniciado por juan900923 Ver Mensaje
Amigo si me das todo lo que tienes hecho, yo te puedo ayudar, soy ingeniero telematico y si quieres te ayudo pero necesito todo muy bien especificado y decirme para que es cada liea de cÓdigo y te ayudo...ok.
necesito ayuda yo, yo programo en C y con la winaapi podrias decirme que necesito primeramente?? por que no tengo ni idea, seria la primera ves, osea segun se que ocn sockets pero no se como hacerle hechame la mano
  #12 (permalink)  
Antiguo 03/04/2011, 22:17
Avatar de dackiller  
Fecha de Ingreso: septiembre-2003
Ubicación: The Matrix
Mensajes: 341
Antigüedad: 20 años, 7 meses
Puntos: 4
Respuesta: Programa para transferir archivos de PC a PC

Cita:
Iniciado por dacarot Ver Mensaje
TENGO ESTE CÓDIGO:




Código:
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Hilos().setVisible(true);                
            }
        });
//CREO UN HILO QUE ME PERMITA ENLAZARME AL PUERTO
        Thread con = new Thread(new Conectar());
        con.run();
    }
    
    private void mostrarMensaje(String mensajeAMostrar){
               jTextArea1.setText(mensajeAMostrar);  
   } 

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextArea jTextArea1;
    // End of variables declaration                   

    
    
    public static class Conectar implements Runnable{
        Hilos hilito = new Hilos();
        public void run(){
            try {
                serverSocket = new ServerSocket(4444);
                hilito.mostrarMensaje("Enlazado con éxito al puerto");
            } catch (IOException ex) {
                hilito.mostrarMensaje("Error al enlazar. Puerto Ocupado");
            }
        }
    }
Esto es un pedazo de código que te genera NetBeans al crear un jForm.

Lo importante aqui son las clases MAIN, CONECTAR, Y la función MOSTRARMENSAJE.

El problema es que cuando corro el programa debería imprimirme lo que le mando a la función MostrarMensaje, y no lo hace.
Que hago para solucionar eso?

Gracias
Eso sería la aplicación Servidor, te falta crear la aplicacion cliente, quien deberia solicitar la transferencia del archivo...


Aqui un ejemplo:

http://www.chuidiang.com/java/sockets/socket.php

Saludos.
__________________
--
NOTA: Si haz conseguido la solución a tu problema, por favor edita el titulo del tema colocando el prefijo [SOLUCIONADO], para que otros usuarios puedan encontrar soluciones más rápido.
  #13 (permalink)  
Antiguo 03/04/2011, 22:56
 
Fecha de Ingreso: abril-2011
Mensajes: 14
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Programa para transferir archivos de PC a PC

Esto está divertido... Vale la pena recordar el hecho que "ServerSocket" crea el socket con el que te conectarás... Pero para crear la conexión, se debe llamar el método "Accept", que crea la conexión y retorna el socket de la conexión.

Necesita algo de trabajo, pero te dejo este ejemplo si te sirve:

Código:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;


public class Main {

	private static int numSesion=0;
	
	public static void main(String[] args) {
		ServerSocket serverSocket = null;
		try {
			serverSocket = new ServerSocket(12345);
		} catch (IOException e) {
			e.printStackTrace();
			return;
		}
		
		while (true){
			try {
				Socket nuevoSocket = serverSocket.accept();
				Escucha esc = new Escucha(nuevoSocket,numSesion++);
				esc.start();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

	protected static class Escucha extends Thread{
		int numSesion;
		Socket miSocket;
		
		public Escucha(Socket miSocket,int numSesion) {
			this.miSocket = miSocket;
			this.numSesion = numSesion;
		}
		
		@Override
		public void run() {
			BufferedReader rd = null;
			try {
				rd = new BufferedReader(new InputStreamReader(miSocket.getInputStream()));
			} catch (IOException e) {
				e.printStackTrace();
			}
			while (!miSocket.isClosed()){
				String linea;
				try {
					linea = rd.readLine();
					if (linea.equals("salir")){
						miSocket.close();
					}
				} catch (IOException e) {
					e.printStackTrace();
					break;
				}
				System.out.println(String.valueOf(numSesion) + "-" + linea);
			}
		}
	}
	
	
}
Este es un programa simple de consola: abre un puerto (12345) y se queda esperando a que alguien se conecte. Si abres una conexión con "Telnet", (utilizando "telnet localhost 12345" por lìnea de comandos) mientras este programa esté en ejecución, verás que cada vez que escribas algo y des "Enter", el porgrama java lo mostrará en consola. Soporta múltiples conexiones (de ahí a abrir un hilo por cada conexión entrante nueva: cada conexión entrante genera un socket, y éste se le pasa al hilo) y cierra la conexion cuando desde el equipo remoto escriban "salir".

El programa se cierra cancelando la JVM (Control + C).

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:53.