import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class writebin { public static void main(String[] argv) throws IOException { int i = 42; String foo = "Hello"; String FILENAME = "binary.txt"; DataOutputStream os = new DataOutputStream(new FileOutputStream(FILENAME)); os.writeInt(i); os.writeChars(foo); os.close(); // System.out.println("Wrote " + i + " to file " + FILENAME); DataInputStream di = new DataInputStream(new FileInputStream (FILENAME)); System.out.println(di.available()); while (di.available() != 0) { System.out.println(di.read()); } di.close(); } } Expected output: 42 Hello Actual Output: 14 0 0 0 42 0 72 0 101 0 108 0 108 0 111