使用DataStream 读写文件之一

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

/* From http://java.sun.com/docs/books/tutorial/index.Html */

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.io.EOFException;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

public class DataIODemo {

public static void main(String[] args) throws IOException {

// write the data out

DataOutputStream out = new DataOutputStream(new FileOutputStream(

"invoice1.txt"));

double[] PRices = { 19.99, 9.99, 15.99, 3.99, 4.99 };

int[] units = { 12, 8, 13, 29, 50 };

String[] descs = { "Java T-shirt", "Java Mug", "Duke Juggling Dolls",

"Java Pin", "Java Key Chain" };

for (int i = 0; i < prices.length; i++) {

out.writeDouble(prices[i]);

out.writeChar('\t');

out.writeInt(units[i]);

out.writeChar('\t');

out.writeChars(descs[i]);

out.writeChar('\n');

}

out.close();

// read it in again

DataInputStream in = new DataInputStream(new FileInputStream(

"invoice1.txt"));

double price;

int unit;

StringBuffer desc;

double total = 0.0;

try {

while (true) {

price = in.readDouble();

in.readChar(); // throws out the tab

unit = in.readInt();

in.readChar(); // throws out the tab

char chr;

desc = new StringBuffer(20);

char lineSep = System.getProperty("line.separator").charAt(0);

while ((chr = in.readChar()) != lineSep)

desc.append(chr);

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);

in.close();

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航