Quantcast
Channel: Thales Simulator Library
Viewing all articles
Browse latest Browse all 332

New Comment on "Connecting and sending commands to the simulator"

$
0
0
This is probably the most basic example you can get: ``` import java.io.BufferedOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.nio.ByteBuffer; public class Main { public static void main(String[] args) throws Exception { Socket socket = new Socket("localhost", 9998); String command = "0006303030304e43"; // the following line converts the hex command string to a byte array byte[] bytes = ByteBuffer.allocate(8).putLong(Long.parseLong(command, 16)).array(); OutputStream out = socket.getOutputStream(); BufferedOutputStream bufferedOut = new BufferedOutputStream(out, 1024); bufferedOut.write(bytes); bufferedOut.flush(); InputStream in = socket.getInputStream(); int result; while ((result = in.read()) != -1) { System.out.print((char)result); } socket.close(); } } ``` To understand the meaning of the string ```0006303030304e43```, it can be broken down as follows (in reverse order): - ```4e43``` is the 2 byte command ```NC``` as hex - ```30303030``` adds a 4 byte header ```0000``` as hex - ```0006``` represents the length in hex of the comamnd and header (i.e. the length of ```0000NC```)

Viewing all articles
Browse latest Browse all 332

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>