Ciao ho un piccolo problema non riesco a capire i datagramSocket e datagramPacket io ho questo problema da risolvere
Programma Client
Invia una stringa contenuta in un pacchetto datagram ad un server in ascolto sulla porta 5980
La Stringa rappresenta una espressione aritmetica formata nel seguente modo:"num1 op num2"
Il valore op può assumere i seguenti valori: "+ - * /";
Riceve il risultato dell'espressione aritmetica
Verifica se il numero risultante e' pari o e' dispari
Spedisce nuovamente al server il risultato della verifica appena effettuata (numero pari o numero dispari)
Programma java: Server.java
Il server è in ascolto sulla porta 5980;
Può soddisfare più client contemporaneamente (quindi un server concorrente)Il server:
manda in esecuzione un nuovo oggetto thread di tipo ServerThread
gli argomenti da passare al thread sono: la "nuova socket" (ragionate in questo caso si utilizza il protocollo UDP)
io ho scritto e poi mi sono perso :
import java.io.*;
import java.net.*;
import java.util.*;
public class QuoteClient {
public static void main(String[] args) throws IOException {
if (args.length != 1) {
System.out.println("Usage: java QuoteClient <hostname>");
return;
}
// get a datagram socket
DatagramSocket socket = new DatagramSocket();
// send request
byte[] buf = new byte[256];
InetAddress address = InetAddress.getByName(args[0]);
DatagramPacket packet = new DatagramPacket(buf, buf.length, address, 4445);
socket.send(packet);
non so come inserire la stringa nel datagram e farla leggere al server
se qualcuno mi aiuta io ringrazio anticipatamente