package local; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /** * @function : FileInputStream->BufferedInputStream->DataInputStream,装饰设计模式 * @author :jy * @company :万里网 * @date :2011-6-26 * * FileInput[Output]Stream:节点流,用于从文件中读取或往文件中写入字节流。如果在构造FileOutputStream时,文件已经存在,则覆盖。 * BufferedInput[Output]Stream:过滤流,需要使用已经存在的节点流来构造,提供带缓冲的读写,提高了读写性能。 * DataInput[Output]Stream:过虑流,需要使用以及存在的节点流来构造,提供了读写java中的基本数据类型的功能。 */ public class FileTest { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { FileOutputStream fileOutputStream = new FileOutputStream("test.txt"); fileOutputStream.write("http://www.10000.com".getBytes()); fileOutputStream.close(); FileInputStream fileInputStream = new FileInputStream("test.txt"); byte[] b = new byte[100]; int len = fileInputStream.read(b); System.out.println(new String(b, 0, len)); fileInputStream.close(); BufferedOutputStream fileBuffer = new BufferedOutputStream(new FileOutputStream("test.txt")); fileBuffer.write("http://www.google.com.hk".getBytes()); fileBuffer.flush(); fileBuffer.close(); BufferedInputStream fileinputBuffer = new BufferedInputStream(new FileInputStream("test.txt")); byte[] bs = new byte[100]; int lens = fileinputBuffer.read(bs); System.out.println(new String(bs, 0, lens)); fileinputBuffer.close(); } }