body, table{font-family: 微软雅黑}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}

字符缓冲流
将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入

BufferedWriter(Writer out) ;
          创建一个使用默认大小输出缓冲区的缓冲字符输出流。

BufferedWriter(Writer out,
int sz);

          创建一个使用给定大小输出缓冲区的新缓冲字符输出流。

//父类Writer中的方法

void

write(char[] cbuf) ;
          写入字符数组。

abstract
void

write(char[] cbuf,
int off, int len)
 ;
          写入字符数组的某一部分。   //这个方法子类实现了

void

write(int c) ;
          写入单个字符。

void

write(String str) ;
          写入字符串。

void

write(String str,
int off, int len)
 ;
          写入字符串的某一部分。

void

newLine()
          写入一个行分隔符。

int

read()
          读取单个字符。

int

read(char[] cbuf)
          将字符读入数组。

abstract
int

read(char[] cbuf,
int off, int len)

          将字符读入数组的某一部分。 //子类BufferedReader实现

String

readLine()
          读取一个文本行。如果已到达流末尾,则返回 null

public static void main(String[] args) throws IOException {
/*             BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("4.txt"));
                String str = "你好,昆明";
                bufferedWriter.write(str);
                bufferedWriter.newLine();   //直接写入一个换行,不用考虑系统平台
                bufferedWriter.write(str);
                bufferedWriter.close();    */
                BufferedReader bReader = new BufferedReader(new FileReader("4.txt"));
/*             char[] cbuf = new char[4];
                bReader.read(cbuf);
               System.out.println(new String(cbuf));  */      //你好,昆
/*             String readLine;
                while( ( readLine = bReader.readLine() ) != null){
                        System.out.println(readLine);
                }
                bReader.close();*/
//使用 BufferedReader BufferedWriter 复制
              BufferedReader bufferedReader = new BufferedReader(new FileReader("11.java"));
              BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("copy.java"));
                //逐行复制
                String string = null;
                while( (string = bufferedReader.readLine()) != null ){
                        bufferedWriter.write(string);
                        bufferedWriter.newLine();    
//读完一行写一行不会把回车换行写进去,所有要自己写换行
                }
                bufferedReader.close();
                bufferedWriter.close();
        }
}

Java——IO类,字符缓冲区的更多相关文章

  1. Java——IO类 字符流概述

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  2. Java IO: 其他字符流(下)

    作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 本小节会简要概括Java IO中的PushbackReader,LineNumberReader,St ...

  3. Java IO流字符流简介及基本使用

    Java IO流字符流简介及常用字符流的基本使用 字符流分为输入字符流(Writer)和输出字符流(Reader),这两种字符流及其子类字符流都有自己专门的功能.在编码中我们常用的输出字符流有File ...

  4. Java IO 类一览表

    下表列出了大多数(非全部)按输/输出,基于字节或字符划分的 Java IO 类.

  5. Java IO之字符流和文件

    前面的博文介绍了字节流,那字符流又是什么流?从字面意思上看,字节流是面向字节的流,字符流是针对unicode编码的字符流,字符的单位一般比字节大,字节可以处理任何数据类型,通常在处理文本文件内容时,字 ...

  6. [Java IO]03_字符流

    Java程序中,一个字符等于两个字节. Reader 和 Writer 两个就是专门用于操作字符流的类. Writer Writer是一个字符流的抽象类.  它的定义如下: public abstra ...

  7. Java IO流-字符流

    2017-11-05 18:34:39 Java中的IO流按数据类型分类分为两种,一是字节流,二是字符流.字符流的出现是为了简化文本数据的读入和写出操作. 如果操作的文件是文本文件,那么使用字符流会大 ...

  8. java IO流——字符流

    一.概述 流的概念: 流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行.设备可以是文件,网络,内存等. 流具有方向性,至于是输入流还是输出流则是 ...

  9. Java IO 类

    IO包中绝大部分的类都是由以下四个类直接或间接继承来的InputStream OutputStream Reader 还有Writer 其中InputStream和OutputStream代表输入流和 ...

  10. 系统学习 Java IO (十三)----字符读写 Reader/Writer 及其常用子类

    目录:系统学习 Java IO---- 目录,概览 Reader Reader 类是 Java IO API 中所有 Reader 子类的基类. Reader 类似于 InputStream ,除了它 ...

随机推荐

  1. Mysql中unique与primary约束的区别分析(转)

    本文章来给大家介绍在mysql中unique与primary约束的区别分析,unique与primary是我们在创建mysql时常用的类型了,下面我来给大家介绍介绍.   定义了UNIQUE约束的字段 ...

  2. firefox、chrome的DNS缓存清除方法

    通过设置hosts文件可以强制指定域名对应的IP,当修改hosts文件,想要浏览器生效,最直接的方法关闭浏览器后重新开启:如果不想重启浏览器,只需要清空浏览器的DNS缓存即可. 清空DNS缓存在chr ...

  3. 51nod 1050 循环数组最大子段和 单调队列优化DP

    题目链接: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1050 这个呢,这个题之前 求一遍最大值  然后求一遍最小值 ...

  4. 51nod 1183 编辑距离

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1183. 题意不再赘述. 分析:大概和LCS差不多的吧   但是我用LCS ...

  5. Facebook广告API系列 2 - Audience Management

    Facebook广告API系列 2 Facebook marketing API有三大组成部分: Audience Management Ads Management Ads Insights 本篇稍 ...

  6. 用NotePad++如何实现大小写转换

    1.小写转换大写  Ctrl + Shift + U 2.大写转换小写  Ctrl + U

  7. C# Interface中的属性

    只能写get,和set,到具体类实现的时候才确定get的是哪个字段的值,set的是哪个字段的值.

  8. [.NET源码] EF的增删改查

    EF的增删改查 创建上下文对象:WordBoradEntities db = new WordBoradEntities(); 一.添加: //1.1创建实体对象 User uObj = new Us ...

  9. Confluence 6 使用 LDAP 授权连接一个内部目录 - 成员 Schema 设置

    请注意:这部分仅在拷贝用户登录(Copy User on Login)和 同步组成员(Synchronize Group Memberships)被启用后可见. 用户组成员属性(Group Membe ...

  10. hdu2110(多重背包/母函数)

    http://acm.hdu.edu.cn/showproblem.php?pid=2110 就是个多重背包,有坑点-.-.注意答案模10000中间结果有可能会爆所以计算时就要取模: 由于必须能均分三 ...