BufferedReader,缓冲输入字符流

1、

/**
 * 输入字符流:
 * --------|Reader 所有输入字符流的基类。抽象类
 * -----------|FileReader 读取文件字符串的输入字符流。
 * -----------|BufferedReader 缓冲输入字符流。目的是:提高读取效率和拓展FileReader的功能。(该类内部也是维护了字节数组)
 */
public class Demo1 {
    public static void main(String[] args) throws IOException {
        File file = new File("E:\\a.txt");
        //建立通道
        FileReader fileReader =new FileReader(file);
        //建立缓冲输入字符流
        BufferedReader bufferedReader = new BufferedReader(fileReader);
        //读取数据
        int content = 0;
        while ((content = bufferedReader.read())!=-1) {
            System.out.print((char)content);
        }
        bufferedReader.close();
    }
}

2、一次读一行

public class Demo2 {
    public static void main(String[] args) throws IOException {
        File file = new File("E:\\a.txt");
        //建立通道
        FileReader fileReader =new FileReader(file);
        //建立缓冲输入字符流
        BufferedReader bufferedReader = new BufferedReader(fileReader);
        //读取数据
        String content=null;
        //一次读一行,注意返回的数据
        while ((content = bufferedReader.readLine())!=null) {
            System.out.println(content);
        }
        bufferedReader.close();
    }
}

3、bufferedWriter

public class Demo2 {
    public static void main(String[] args) throws IOException {
        File file = new File("E:\\b.txt");
        FileWriter fileWriter = new FileWriter(file,true);
        BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
        //String string="努力编程";
        String string="哈哈";
        bufferedWriter.newLine();//相当于换行!!
        bufferedWriter.write(string);
        bufferedWriter.close();
    }
}
时间: 2024-10-28 23:53:10

BufferedReader,缓冲输入字符流的相关文章

常用输入字符流Reader

Reader是用于输入字符数据的,它所根据的 方法跟InputStream基本一样.它是所有输入字符流的抽象父类,因此不能直接构建Reader的实例,必须通过它的子类来构建.以下是几个常用的子类: 1.字符数组作为输入源--CharArrayReader CharArrayReader包含一个内部缓冲区,该缓冲区包括从流中读取的字符数组.所谓内存缓存区,就是对应了内存中存在的字符数组,因此可以根据字符数组来创建该类的实例.它有以下两个构造函数: CharArrayReader(char[] bu

Android笔记:利用InputStream和BufferedReader 进行字节流 字符流处理

通过socket获取字节流处理时最初使用的是BufferedReader和PrintWriter  这种方式在解析字符串时是比较方便的 但是在处理字节时不够方便最终还是回归到InputStream和OutputStream方式 不使用缓存直接使用字节流操作,一次传输的字节数据在300字节以内,目前没有测试差距会有多大. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException;

字节流与字符流复习

/* 字节流 输入字节流: -----------| InputStream 所有输入字节流的基类 抽象类 -----------------| FileInputStream 读取文件数据的输入字节流 -----------------| BufferedInputStream 缓冲输入字符流 该类出现的目的是为了提高读取文件 数据的效率. 这个类其实只不过是在内部维护了一个8kb的字节数组而已. 输出字节流: -----------| OutputStream 所有输出字节流的基类. 抽象类

Java IO 转换流 字节转字符流

Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| FileInputStream 读取文件的输入字节流.------------| BufferedInputStream 缓冲输入字节流. 该类内部其实就是维护了一个8kb(8192b)字节数组而已. 该类出现的目的是为了提高读取文件数据的效率. 输出字节流:---------| OutputStream

68. 缓存输入输出字符流

输入字符流:--------------| Reader 输入字符流的基类. 抽象类----------| FileReader 读取文件的输入字符流----------| BufferedReader 缓存输入字符流(提高效率和扩展了FileReader的功能).内部其实也维护了一个字符数组 扩展功能:readLine()     一次读取文本的一行数据,如果读取到了文件末尾返回null 输出字符流:--------------| Write  输出字符流的基类. 抽象类----------|

IO字符流之读写缓冲区(BufferedWriter、BufferedReader)

缓冲区是为了提高效率所使用的,在使用缓冲区之前必须先明确流对象.就如同拿杯子接水一样,必须先知道这个杯子放在哪里接水 BufferedWriterDemo(输入字符流缓冲区演示): import java.io.*; /* 缓冲区的出现是为了提高流的操作效率而出现的. 所以在创建缓冲区之前,必须要先有流对象. 该缓冲区对象中提供了一个跨平台的换行符. newLine(); */ class BufferedWriterDemo { public static void main(String[]

黑马程序员——21,字符流FileReader,FileWriter,BufferedWriter,BufferedReader,装饰设计模式,LineNumberReader

------<ahref="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- /* 字符流的缓冲区技术: 对于一些大文件,如果读取一个字符才写一个字符,读写操作过于频繁. 为了解决这个问题,引入了缓冲区技术. 缓冲区技术是在流的基础上(必须要先有流)增强了流对于数据的操作效率. 就如同在水龙头上拿水喝,原本是一滴一滴

IO(字符流)

    1. 由于Java采用16位的Unicode字符,因此需要基于字符的输入/输出操作.从Java1.1版开始,加入了专门处理字符流的抽象类Reader和Writer,前者用于处理输入, 后者用于处理输出. 2. Java程序语言使用Unicode来表示字符串和字符,Unicode使用两个字节来表示一个字符,即一个字符占16位 3. 字节流的编码规范与具体的平台有关,可以在构造流对象时指定规范,也可以使用当前平台的缺省规范 InputStreamReader和OutputStreamWrit

[学习笔记]Java IO之字符流

概述 字符流是专门用于处理文本文件的流,其中包括了文本编码相关转换工作. 字符流只可以处理文本字符数据. 每个字符流都包括一种编码方式,可以使用系统默认,也可以自行设定. 编码 1. 编码表 生活中语言文字和计算机中对应的数据表 2. 常见编码表 ASCII:包括字母和常见符号,1字节编码,首位为0. ISO8859-1:包括拉丁字母,1字节编码,首位为1. GB2312:简体中文码表,包括6~7千汉子及符号,2字节编码,2个字节首位均为1. GBK:中文码表,包括GB2312全部编码,约2万个