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

Abrir un archivo de otra pc

Estas en el tema de Abrir un archivo de otra pc en el foro de Java en Foros del Web. Buenas, estoy pensando hacer un programa que lea un archivo txt de otra pc que este en LAN, es necesario hacer sockets ? y si ...
  #1 (permalink)  
Antiguo 03/03/2012, 05:49
 
Fecha de Ingreso: enero-2009
Mensajes: 53
Antigüedad: 15 años, 3 meses
Puntos: 1
Abrir un archivo de otra pc

Buenas, estoy pensando hacer un programa que lea un archivo txt de otra pc que este en LAN, es necesario hacer sockets ? y si fuera o no así como podría hacer la conexión gracias .
  #2 (permalink)  
Antiguo 03/03/2012, 06:39
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 3 meses
Puntos: 39
Respuesta: Abrir un archivo de otra pc

Usa la clase Socket para conectar a la otra pc, y la clase ServerSocket en la pc a la que quieres conectar para que acepte la petición.

El proceso de conexión es sencillo, en la maquina a la que quieres conectar pones:
Código Java:
Ver original
  1. ServerSocket ss = new ServerSocket(10000);
  2. Socket s = ss.accept();
En ese punto la pc se queda esperando a que alguien conecte en el puerto 10000.

Y en la maquina con la que quieres conectar pones:
Código Java:
Ver original
  1. Socket s = new Socket(host, 10000);

A partir de ahí ambas pcs estarán conectadas y podrán comunicarse, solo tienes que usar los métodos de la clase Socket para realizar estas acciones:
-PC que conecta indica que fichero quiere leer.
-PC que contiene el fichero lo abre y le envía el contenido línea a línea a la pc que lo solicitó.
-La pc que solicitó el fichero recoge esas líneas y las procesa.
-Ambas pc cierran la conexión del socket con s.close() (pero la pc que contiene el fichero seguirá ejecutándose esperando una nueva solicitud.

También puedes enviar el fichero directamente a la pc que lo pide, pero si no has trabajado con sockets antes creo que te resultará más difícil.

Etiquetas: pc, programa
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 11:12.