package hengzhe.cn.o1;

 import java.io.*;

 /*
* 带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类
* 与。net的cache是一样为缓存,有了这个就可以在流中实现skip(),mark(),reset()等方法
* bufferedinputstream可以对inputstream类进行带缓存的包装以达到性能的优化。
* 有两个构造函数BufferdInputStream(InputStream in)、和BufferdInputStream(InputStream in,int size)
* 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
* BufferdoutputStream和outputStream一样,只不过有个flush()方法用来将缓存强行输出,该方法也有两个构造函数:
* BufferdOutPutStream(OutPutStream in)、和BufferdOutPutStream(OutPutStream in,int size)
* 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
* 注:flush()方法就是将缓存区里的数据强行排空,只对OutPutStream有效
* BufferedReader类常用的方法如下:
* read()、readLine(),write(string s ,int off,int len):写放字条的某一部分、flush()刷新缓存、newLine()写入一行分隔符
*/
public class Buffered
{ public static void main(String[] args)
{
String content[] =
{ "白日依", "山尽", "黄河入", "海流" };
File file = new File("e:java.txt");
try
{
FileWriter fw = new FileWriter(file);
BufferedWriter bufw = new BufferedWriter(fw);
for (int i = 0; i < content.length; i++)
{
bufw.write(content[i]);// 写入文件
bufw.newLine();// 以单行写入文件 }
bufw.close();
fw.close(); } catch (Exception e)
{
e.printStackTrace();
} // read
try
{
FileReader fr = new FileReader(file);
BufferedReader bufr = new BufferedReader(fr);
String str_info = null;
int i = 0;
while ((str_info = bufr.readLine()) != null)
{
i++;
System.out.println("第" + i + "行:" + str_info); }
bufr.close();
fr.close(); } catch (Exception ex)
{
ex.printStackTrace(); }
}
/*
* */ }

带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类的更多相关文章

  1. 带缓存的基于DateTimeFormatter的日期格式化工具类

    JAVA中的SimpleDateFormat是非线程安全的,所有在1.8的JDK版本里提供了线程安全的DateTimeFormatter类,由于是线程安全的,故我们可以将此类缓存起来多次利用提高效率. ...

  2. 不带缓存的I/O和标准(带缓存的)I/O

    首先,先稍微了解系统调用的概念:       系统调用,英文名system call,每个操作系统都在内核里有一些内建的函数库,这些函数可以用来完成一些系统系统调用把应用程序的请求传给内核,调用相应的 ...

  3. Yii的自带缓存的使用

    Yii的自带缓存都继承CCache 类, 在使用上基本没有区别缓存基础类 CCache 提供了两个最常用的方法:set() 和 get().要在缓存中存储变量 $value,我们选择一个唯一 ID 并 ...

  4. Spring Boot 自带缓存及结合 Redis 使用

    本文测试环境: Spring Boot 2.1.4.RELEASE + Redis 5.0.4 + CentOS 7 自带缓存 如果没有使用缓存中间件,Spring Boot 会使用默认的缓存,我们只 ...

  5. 基于AFN封装的带缓存的网络请求

    给大家分享一个基于AFN封装的网络请求 git: https://github.com/zhouxihi/NVNetworking #带缓存机制的网络请求 各类请求有分带缓存 , 不带缓存, 可自定义 ...

  6. Delphi中带缓存的数据更新技术

    一. 概念 在网络环境下,数据库应用程序是c/s或者是多层结构的模式.在这种环境下,数据库应用程序的开发应当尽可能考虑减少网络数据传输量,并且尽量提高并发度.基于这个目的,带缓存的数据更新技术应运而生 ...

  7. Java中带包(创建及引用)的类的编译

    Java中带包(创建及引用)的类的编译与调试 java源程序的编译大家都知道,也就是cmd中到源文件所在目录下javac **.java即可,当程序中有包声明还能简简单单的直接javac **.jav ...

  8. 带标准IO带缓存区和非标准IO 遇到fork是的情况分析

    废话不多说 直接代码 #include<stdio.h> #include<sys/types.h> #include<unistd.h> #include< ...

  9. 不带缓存IO和标准(带缓存)IO

    linux对IO文件的操作分为: 不带缓存:open read.posix标准,在用户空间没有缓冲,在内核空间还是进行了缓存的.数据-----内核缓存区----磁盘 假设内核缓存区长度为100字节,你 ...

随机推荐

  1. ps裁剪圆角

    1.打开要编辑的图片 2.选择圆角矩形工具,并调整半径(半径越大,角越圆),本例半径为20像素 3.使用上述工具画出选区 4.按下ctrl+enter,可以看到选区边缘描上了虚线 5.菜单栏-图像-剪 ...

  2. [CS231n-CNN] Training Neural Networks Part 1 : parameter updates, ensembles, dropout

    课程主页:http://cs231n.stanford.edu/ ___________________________________________________________________ ...

  3. SNF开发平台WinForm之五-高级查询使用说明-SNF快速开发平台3.3-Spring.Net.Framework

    5.1运行效果: 5.2开发实现: 1.按上面效果来说,先来看一下在程序当中如果调用.第一步在页面拖拽一个按钮为“高级查询”,事件上写下如下代码: 如果是单表查询的话,只需要传GridView就行,如 ...

  4. webpack多页面开发与懒加载hash解决方案

    之前讨论了webpack的hash与chunkhash的区别以及各自的应用场景,如果是常规单页面应用的话,上篇文章提供的方案是没有问题的.但是前端项目复杂多变,应对复杂多页面项目时,我们不得不继续踩w ...

  5. iOS_拨打电话/发送短信

    GitHub address : https://github.com/mancongiOS/makeACallAndSendMessage.git 功能一: 拨打电话 1.可以有提示框.提示该电话号 ...

  6. linux根目录下文件夹概览

    / 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib ...

  7. 说说Web API数据格式化——Json

    题外话 一同事离职了,我去上厕所的路上正巧碰到他办完离职手续出来,抱着他的全部家当,最值钱的可能就是那个两块钱的蓝色杯子和手中的雨伞了.在一块儿走向厕所的长长楼道里,我对他说:丫的,你是不是找到别的发 ...

  8. IOS开发UI基础UITextFidle相关属性

    UITextFidle相关属性 •    enablesReturnKeyAutomatically默认为No,如果设置为Yes,文本框中没有输入任何字符的话,右下角的返回按钮是disabled的. ...

  9. springMVC中Dispatcher中的/和/*的区别

    1. 首先 / 这个是表示默认的路径,及表示:当没有找到可以匹配的URL就用这个URL去匹配.2. 在springmvc中可以配置多个DispatcherServlet,比如: 配置多个Dispatc ...

  10. JS 将一段文本 每个英文首字母大写

    function replaceStr(str){ // 正则法 str = str.toLowerCase(); var reg = /\b(\w)|\s(\w)/g; // \b判断边界\s判断空 ...