J'essaie de communiquer Modrssim (Simulateur Modbus) avec une classe Java. J'envoie une requête à modsim et ça répond à ça. Mais quand j'essaie de lire la réponse, je ne peux pas obtenir le caractère approprié.Recevoir coeur, sourires de Modsim via TCP/IP
Voici mon code:
import java.net.*;
import java.io.*;
class client
{
public static void main(String args[]) throws IOException
{
Socket s=null;
BufferedReader b=null;
char data[] ={0,0,0,0,0,6,1,2,0,2,0,0};
try
{
s=new Socket("199.199.51.7",502);
OutputStreamWriter writer = new OutputStreamWriter(s.getOutputStream());
BufferedWriter bw = new BufferedWriter(writer);
System.out.println("Sending Data....");
bw.write(data);
bw.flush();
b=new BufferedReader(new InputStreamReader(s.getInputStream()));
}
catch(UnknownHostException u)
{
System.err.println("I don't know host");
System.exit(0);
}
String inp;
System.out.println("Receiving......");
while((inp=b.readLine())!=null)
{
System.out.println(inp);
System.out.println("dONE");
}
b.close();
s.close();
}
}
En réponse, je reçois 00 00 00 00 00 03 01 02 00 à MODSIM. Une image de la réponse à MODSIM est ici:
Mais en lisant, il montre un coeur et deux smileys. Données reçues:
problème