Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MaEdCo

#1
Cita de: egyware en 29 Octubre 2007, 18:54 PM
yo no se mucho sobre datagramas aun pero e usado TCP y para eso debes poner el socket a la escucha  :huh: creo acuerdate que tb los datagramas no todos llegan se pierden en el camino tb, bueno disculpa por no ayudarte pero tu problema me sirvio para saber como enviar un datagrama (ahorame queda solo hacerlo  :( at my house)

pues muchas gracias por prestarme atención :), y si con TCP ya es mas facil, pero esta practica debe hacerse con datagramas UDP :-\ :-(
#2
Pues eso, haber si alguien por favor seria tan amable de colaborarme con esta practica

http://www.zshare.net/download/4487693cad378a/

o decirme donde consigo informacion sobre sockets pero que este bien explicado como envio y recibo: desde un server y desde un cliente

gracias

ahh lo que he logrado hacer es simplemente paso de mensajes

Cliente

import java.net.*;
import java.io.*;

public class ClienteSaludoUDP{
public static void main(String args[]){
String mensaje;
if(args.length==1){
   mensaje=args[0];
   DatagramSocket socket=null;
   try{
    byte[]buffer_salida=mensaje.getBytes();
    InetAddress destino = InetAddress.getByName("localhost");
    DatagramPacket datagrama = new DatagramPacket(buffer_salida,buffer_salida.length,destino,9000);
    socket = new DatagramSocket();
    socket.send(datagrama); 
   } catch(IOException e){
      e.printStackTrace();
      } finally {
        if(socket != null) socket.close();
        }
  }
  else{
     System.out.println("USo:ClienteSaludoUDP mensaje");
  }
}
}   


Servidor

import java.net.*;
import java.io.*;

public class ServidorSaludoUDP
{
public static void main(String args[])
{
  try
    {
      DatagramSocket socket = new DatagramSocket(9000);
      byte[] buffer_entrada = new byte[255];
      byte[] datos;
      String mensaje;
      do
       {       
        DatagramPacket datagrama = new DatagramPacket(buffer_entrada,buffer_entrada.length);
        System.out.println("Servidor>))))))...");
        socket.receive(datagrama);
        System.out.println("Recibiendo Informacion: ");
        InetAddress hostDestino = datagrama.getAddress();
        int puertoDestino = datagrama.getPort();
        datos = datagrama.getData();
       

       
       
        mensaje = new String(datos,0,datos.length);
     


        System.out.println("Clente: "+hostDestino.getCanonicalHostName()+"|Puerto #"+puertoDestino+"|          Mensaje:"+mensaje.trim());
        for( int i=0; i < datagrama.getLength(); i++ )
        datos[i] = (byte)(' ');
        System.out.println("==============================================================");
      } while(true);
    }
   catch(IOException e)
   {e.printStackTrace();}
}

}

:-[ :xD :D