Problème de conditions et retours de fonctions
Bonjour,
Je débute en java, plus par nécessite que par plaisir mais ce n'est pas inintéressant au final :)
J'ai un projet au lycée de supervision d'un système via Ethernet/wifi. (pour info PIC + ENC28J60)
Je le piloterai avec un programme java avec des datagrammes udp. (un nombre de 0 à 99 me suffira amplement pour communiqué d'où la limitation à 2 bytes en réception)
Mon début de programme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| import java.net.*;
import java.io.*;
public class udp {
static int port=2011; // Le port UDP de destination
static int port2=2010; // Le port UDP local
static InetAddress adr=null;
static DatagramSocket sock=null;
static String message="Test";
static byte[] tampon=new byte[message.length()];
static boolean send(String message) throws IOException{
adr=InetAddress.getByName("127.0.0.1");
tampon=message.getBytes();
DatagramPacket paquet=new DatagramPacket(tampon,tampon.length,adr,port);
sock=new DatagramSocket();
sock.send(paquet);
return true;
}
static String receive() throws IOException{
tampon=new byte[2];
String message2;
DatagramSocket sock=new DatagramSocket(port2);
DatagramPacket paquet=new DatagramPacket(tampon,tampon.length);
sock.receive(paquet);
message2=new String(tampon);
System.out.println(message2);
return message2;
}
public static void main(String[] args) throws IOException, SocketException
{
send("00");
if(receive()=="00") System.out.println("ok");
else System.out.println("pas ok");
}
} |
Mon problème : bien que la console recoit la valeur "00", il me marque "pas ok".
Pourriez vous m'aider ?
Merci d'avance !