带缓存的输入输出流
2016-03-15 21:09
176 查看
一.带缓存的输入输出流
缓存可以说是I/O的一种性能优化。缓存流为I/O流增加了内存缓存区。有了缓存区,使得在流上执行skip()、mark()和reset()方法都成为可能。
1.BufferedInputStream类和BufferedOutputStream类
(1)BufferedInputStream类可以对任意的InputStream类进行带缓存区的包装以达到性能的优化。
BufferedInputStream类有两个构造函数:
BufferedInputStream(InputStream in);
BufferedInputStream(InputStream in,int size);
第一种形式的构造函数创建了一个带有32个字节的缓存流;第二种形式的构造函数按指定的大小来创建缓存区。一个最优的缓存区的大小,取决于它所在的操作系统、可用的内存空间以及机器配置。从构造函数可以看出,BufferedInputStream对象位于InputStream类对象之前。
缓存
小结:
缓存可以说是I/O的一种性能优化。缓存流为I/O流增加了内存缓存区。有了缓存区,使得在流上执行skip()、mark()和reset()方法都成为可能。
1.BufferedInputStream类和BufferedOutputStream类
(1)BufferedInputStream类可以对任意的InputStream类进行带缓存区的包装以达到性能的优化。
BufferedInputStream类有两个构造函数:
BufferedInputStream(InputStream in);
BufferedInputStream(InputStream in,int size);
第一种形式的构造函数创建了一个带有32个字节的缓存流;第二种形式的构造函数按指定的大小来创建缓存区。一个最优的缓存区的大小,取决于它所在的操作系统、可用的内存空间以及机器配置。从构造函数可以看出,BufferedInputStream对象位于InputStream类对象之前。
package org.hanqi.ex; import java.io.*; public class TestFile4 { public static void main(String[] args) { try { File f=new File("d:\\test.txt"); //带缓存 //Writer接口的实现类 FileWriter fw= new FileWriter(f,true); //缓存写入类,构造时需要传入Writer实例 BufferedWriter bw=new BufferedWriter(fw); bw.write("\n这是清空前缓存方式写入的字符串"); //自动管理缓存: //自动写入:1.缓存满了 2.缓存关闭之前 bw.flush();//主动清空缓存,写入数据 bw.write("\n这是清空后缓存方式写入的字符串"); bw.close(); fw.close(); System.out.println("写入完成"); //缓存读 FileReader fr=new FileReader(f); BufferedReader br=new BufferedReader(fr); //第一次读 // String str =br.readLine(); // // // while(str!=null) // { // System.out.println(str); // // str=br.readLine(); // } while (true) { String str=br.readLine(); if(str==null) { break; } System.out.println(str); } } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } }
缓存
小结:
相关文章推荐
- extjs 组件与布局
- ios基础(二)
- UML 状态图 statechart diagram
- 分布式Web应用----基于Socket+动态代理实现简单RPC 生产者消费者模型
- 2659: [Beijing wc2012]算不出的算式|找规律
- 树莓派磁盘扩容
- nefu 197 关键字检索(kmp算法)
- linux cifs挂载windows共享文件夹
- 常见UI界面库
- R语言非线性方程组求解dfsane,nleqslv
- C 编程规范
- UML 活动图 activity diagram
- UML 协作图(通信图) collaboration diagram
- hue中使用oozie的workflow执行mr
- 一款开源的Android图片搜索APP
- tail 实现 +注释
- hue中使用oozie的workflow执行mr
- 经济装修
- Struts2 + Spring + Hibernate 框架搭建 步骤
- jsp登录界面(一)