Avatar billede brian8 Nybegynder
28. marts 2003 - 10:39 Der er 1 kommentar og
1 løsning

Søger source koder til UDP client/server???

Er der nogle som har koder til hvordan man opsætter en client/server via UDP-protokollen. Jeg søger nogle komplette koder som bare kan ligges på to forskellige pc´er og så virker det.
Avatar billede brian8 Nybegynder
28. marts 2003 - 13:05 #1
Nu fandt jeg selv nogel :)
Her er de

import java.net.*;
import java.io.*;
public class UDPServer
{
    public static void main(String args[])
    {
    DatagramSocket aSocket = null;
        try
        {
            aSocket = new DatagramSocket(6789);
            System.out.println("lytter på port 6789");
        byte[] buffer = new byte[10];
        while(true)
        {
            DatagramPacket request = new DatagramPacket(buffer, buffer.length);
              aSocket.receive(request);
            System.out.println("host logget på");

            DatagramPacket reply = new DatagramPacket(request.getData(), request.getLength(), request.getAddress(), request.getPort());
            aSocket.send(reply);
            System.out.println("reply sendt til client");

        }
        }
        catch (SocketException e){
            System.out.println("Socket: " + e.getMessage());
      }
        catch (IOException e) {
            System.out.println("IO: " + e.getMessage());
        }
    finally
    {
            if(aSocket != null) aSocket.close();
    }
    }
}



import java.net.*;
import java.io.*;
public class UDPClient
{
    public static void main(String args[])
    {
    // args give message contents and server hostname
    DatagramSocket aSocket = null;
        String s = "hej";
        //String host = "192.168.184.99";
        //String aHost = "192.168.0.1";
      try
      {
        aSocket = new DatagramSocket();
        byte [] m = s.getBytes();
        InetAddress aHost = InetAddress.getByName("compaq");  //.getLocalHost();
          System.out.println("host " + aHost);

        int serverPort = 6789;
          System.out.println("port " + serverPort);

        DatagramPacket request = new DatagramPacket(m,  s.length(), aHost, serverPort);
        aSocket.send(request);
          System.out.println("request er sendt til " + aHost);

        byte[] replyBuffer = new byte[10];
        DatagramPacket reply = new DatagramPacket(replyBuffer, replyBuffer.length);
        aSocket.receive(reply);
          System.out.println("reply er modtaget :) ");
        System.out.println("Reply: " + new String(reply.getData()));
      }
      catch (SocketException e){
          System.out.println("Socket: " + e.getMessage());
      }
      catch (IOException e){
          System.out.println("IO: " + e.getMessage());
      }
      finally {if(aSocket != null) aSocket.close();}
  }
}
Avatar billede brian8 Nybegynder
28. marts 2003 - 15:56 #2
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester