import java.io.*; import java.util.*; class DataStreamTest { public static void main(String[] args) { DataOutputStream dos = new DataOutputStream( new FileOutputStream("invoice1.txt")); double[] prices = {456.50,609.99}; int[] prices = {2,3}; String descs[] = {'shirt','tie'}; for (int i = 0; i < prices.length; i ++) { dos.writeDouble(prices[i]); dos.writeChar('\t'); dos.writeInt(units[i]); dos.writeChar('\t'); dos.writeChars(descs[i]); dos.writeChar('\n'); } dos.close(); DataInputStream dis = new DataInputStream( new FileInputStream("invoice1.txt")); double price,total; int unit; String desc; try { while (true) { price = dis.readDouble(); dis.readChar(); // throws out the tab unit = dis.readInt(); dis.readChar(); // throws out the tab desc = dis.readLine(); System.out.println("You've ordered " + unit + " units of " + desc + " at $" + price); total = total + unit * price; } } catch (EOFException e) { } System.out.println("For a TOTAL of: $" + total); dis.close(); } }