DataInputStream和DataOutputStream的简单应用
DataInputSteam和DataOutputSteam是没有必要存储整个对象的信息,而只是要存储一个对象的成员数据,成员数据的类型假设都是Java的基本数据类型,这样的需求不必使用到与Object输入、输出相关的流对象,可以使用DataInputStream、DataOutputStream来写入或读出数据package com.study;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import com.study.Books;public class DataStreamBooks {public static void main(String[] args) {//使用DataInputStream,DataOutputStream写入文件且从文件中读取数据。Books [] books = {new Books("Java基础教程","2010-1-2",10),new Books("Javascript基础教程","2010-2-2",20),new Books("Servlet基础教程","2010-3-2",30),new Books("JSP基础教程","2010-4-2",40)};try {//Data Stream写到输入流中DataOutputStream dos = new DataOutputStream(new FileOutputStream("F:\\project\\study\\WebRoot\\datasteam.txt"));for(Books book : books) {dos.writeUTF(book.getBook_name());dos.writeUTF(book.getBook_date());dos.writeInt(book.getMoney());}dos.flush();dos.close();DataInputStream dis = new DataInputStream(new FileInputStream("F:\\project\\study\\WebRoot\\datasteam.txt")); for(Books book : books) {System.out.print(dis.readUTF());System.out.print("==========");System.out.print(dis.readUTF());System.out.print("==========");System.out.println(dis.readInt());}dis.close();}catch(IOException e) {e.printStackTrace();}}} DataStreamBooks.javapackage com.study;public class Books {private String book_name;private String book_date;private int money;public Books(String book_name,String book_date,int money) {this.book_name = book_name;this.book_date = book_date;this.money = money;}public String getBook_name() {return book_name;}public void setBook_name(String book_name) {this.book_name = book_name;}public String getBook_date() {return book_date;}public void setBook_date(String book_date) {this.book_date = book_date;}public int getMoney() {return money;}public void setMoney(int money) {this.money = money;}} Books.java
页:
[1]