Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.IOException;
- import java.net.*;
- import java.util.Scanner;
- public class ClienteChatUDP
- {
- public static void main(String[] args)
- {
- try
- {
- /* Creo mi socket de datagramas UDP*/
- DatagramSocket socketServidor = new DatagramSocket(7000);
- /* Numero de mensajes que ha recibido el servidor*/
- int numeroMensajes = 0;
- /* Mensaje que recibimos del cliente */
- String mensajeEntrada = "";
- // Mensaje que envío:
- String mensajeEnviado = "";
- // Buffer de recepción:
- byte[] bufferEntrada;
- System.out.println("Chat demigrante arrancao. Recibe en " + socketServidor.getLocalPort() + ". ");
- Scanner keyboard = new Scanner(System.in);
- do
- {
- // Mensaje a enviar:
- System.out.print("Mensaje a enviar: ");
- mensajeEnviado = keyboard.nextLine();
- // Convierto el mensaje a bytes:
- byte[] bufferSalida = mensajeEnviado.getBytes();
- // Creo mi paquete a enviar:
- DatagramPacket datagramaSalida; // Datagrama a enviar.
- InetAddress ipDestino = InetAddress.getByAddress(new byte[]{62,83, 91, 120});
- int puerto = 8000; // Debe ser superior a 1023
- datagramaSalida = new DatagramPacket(bufferSalida, bufferSalida.length, ipDestino, puerto);
- // Y lo envío:
- socketServidor.send(datagramaSalida);
- System.out.println("Envío: " + mensajeEnviado + " a " + datagramaSalida.getAddress() + " : " + datagramaSalida.getPort());
- // Preparo buffer de respuesta del servidor
- bufferEntrada = new byte[128];
- // Recojo la respuesta del datagrama de entrada:
- DatagramPacket paqueteEntrada = new DatagramPacket(bufferEntrada, bufferEntrada.length);
- socketServidor.receive(paqueteEntrada);
- // Leo el mensaje del servidor:
- mensajeEntrada = new String(paqueteEntrada.getData());
- System.out.println("Mensaje del otro tío " + mensajeEntrada);
- }while (!mensajeEnviado.equals("@SALIR"));
- }
- catch (SocketException e)
- {
- e.printStackTrace();
- }
- catch (UnknownHostException e)
- {
- e.printStackTrace();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement