import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class DataStream { public static void main(String[] args) throws IOException { // write("test5.txt"); // read("test5.txt"); readFromBuffer(writeToBuffer()); } //write to local file public static void write(String path) throws IOException{ DataOutputStream out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(path))); out.writeInt(1); out.writeShort(2); out.writeLong(1); out.writeUTF("Some text"); out.flush(); out.close(); } //read from local file public static void read(String path) throws IOException{ DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(path))); System.out.println(in.readInt()); System.out.println(in.readShort()); System.out.println(in.readLong()); System.out.println(in.readUTF()); in.close(); } //write to byte array public static byte[] writeToBuffer() throws IOException{ byte[] buff = null; ByteArrayOutputStream bos = new ByteArrayOutputStream(); DataOutputStream out = new DataOutputStream(new BufferedOutputStream(bos)); out.writeInt(1); out.writeShort(2); out.writeLong(1); out.writeUTF("Some text"); out.flush(); out.close(); buff = bos.toByteArray(); bos.close(); return buff; } //read from byte array public static void readFromBuffer(byte[] b) throws IOException{ DataInputStream in = new DataInputStream(new BufferedInputStream(new ByteArrayInputStream(b))); System.out.println(in.readInt()); System.out.println(in.readShort()); System.out.println(in.readLong()); System.out.println(in.readUTF()); in.close(); } }