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. 不带缓存的I/O和标准(带缓存的)I/O

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

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

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

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

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

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

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

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

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

  6. DRF自带的Request和Response对象(DRF基类APIView)

    # 转载请留言联系 1.Request对象 DRF传入视图的request对象,不再是Django默认的HttpRequest对象,而是扩展了HttpRequest类的Request类的对象. RES ...

  7. 【转】UML类图与类的关系详解

    UML类图与类的关系详解   2011-04-21 来源:网络   在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(D ...

  8. UML(一) 类图及类间关系

    原创文章,同步发自作者个人博客,http://www.jasongj.com/uml/class_diagram/ UML类图 UML类图介绍 在UML 2.*的13种图形中,类图是使用频率最高的UM ...

  9. 转 关于C#中派生类调用基类构造函数的理解

    关于C#中派生类调用基类构造函数的理解 .c#class       本文中的默认构造函数是指在没有编写构造函数的情况下系统默认的无参构造函数 1.  当基类中没有自己编写构造函数时,派生类默认的调用 ...

随机推荐

  1. Understanding Chan Chan&#39;s in Go

    转自老外的文章:http://tleyden.github.io/blog/2013/11/23/understanding-chan-chans-in-go/ A channel describes ...

  2. 【日常笔记】datatables表格数据渲染

    现在有很多表格渲染方式 这里只是记录怎么使用datatables渲染数据 使用datatables可以更方便的来渲染数据 [中文api]http://datatables.club/index.htm ...

  3. win8.1 vs2010 C++环境下 编译Android Adb.exe

    1 IntelliSense: cannot open source file "usb100.h"  adb 这是因为没有安装sdk造成的.win7下安装wdk,vs2010能够 ...

  4. [置顶] android 自定义ListView实现动画特效

    通过自定义ListView实现动画特效,被点击元素A向前移,A之前元素往后移动. 重点在于动画的实现: 具体代码如下: package com.open.widget; import java.uti ...

  5. 《VIM-Adventures攻略》前言

    本文已转至http://cn.abnerchou.me/2014/03/02/bfdaadb0/ 自从有了计算机,人们就想向其灌输自己的想法. 要想对其输入,自然离不开文本编辑器. 公告:<VI ...

  6. linux下挂载CDROM命令

    cdrom装载在/dev/cdrom 下面. 挂载时在权限范围内建立一个文件夹.例如mkdir /home/dang/cdtmp 然后执行 mount dev/cdrom /home/dang/cdt ...

  7. IOS获得各种文档文件夹路径的方法

    iphone沙箱模型的有四个目录,各自是什么,永久数据存储一般放在什么位置.得到模拟器的路径的简单方式是什么. documents,tmp.app,Library. (NSHomeDirectory( ...

  8. 【转】HBase技术介绍 转载自 http://www.searchtb.com/2011/01/understanding-hbase.html

    HBase简介 HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. HB ...

  9. python之串口操作

    1.安装pyserial linux上直接安装: #python2 sudo pip install pyserial #或者python3 sudo pip3 install pyserial Wi ...

  10. java的继承性

    在java继承中,子类也称为派生类,父类也称为基类或者超类,基本语法 :子类 extends 父类{} 实现一个简单的继承类: class Person{ private String name; p ...