$ java TestOut 63 == 65533 [1]+ Done java TestIn $ java TestIn & [1] 29008 $ java Terminator localhost 65533 == 65533 [1]+ Done java TestIn $ cat TestIn.java import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class TestIn { public static void main(String[] args) { try { ServerSocket ss = new ServerSocket(16789); Socket s = ss.accept(); InputStreamReader isr = new InputStreamReader(s.getInputStream()); System.out.print((int) isr.read()); System.out.println(" == 65533"); } catch (Exception e) { e.printStackTrace(); } } } $ cat TestOut.java import java.io.OutputStreamWriter; import java.net.Socket; public class TestOut { public static void main(String[] args) { try { OutputStreamWriter osw = new OutputStreamWriter(new Socket("127.0.0.1", 16789).getOutputStream()); osw.write(65533); osw.flush(); } catch (Exception e) { e.printStackTrace(); } } }