java入门 -- Java I/O(七)输入字符流 FileReader

/*

* I/O流技术 字符流

* 字节流: 字节流读取的以二进制的形式读取数据

* 字符流:字符流会把读取到的二进制数进行对饮的编码和解码工作,字符流=字节流+编码?解码

*

* 输入字符流体系:

* ---| Reader 输入字符流的基类,是一个抽象类

* -------|FileReader 读取文件的输入字符流

*

* FileReader使用步骤:

* 1. 定位目标文件:

* 2.构建字符流的输入通道;

* 3.读取数据

* 4.关闭资源

*/

package com.michael.lin;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

public class Demo01 {

public static void main(String[] args) throws IOException{

readDate();

readData2();

}

//使用缓冲数组读取文件内容

public static void readData2() throws IOException{

//1.定位目标文件

File file = new File("c:\\data.txt");

//2.构建缓冲数组和字符流输入通道

char[] buf = new char[1024];

FileReader fileReader = new FileReader(file);

//3.读取数据

int length = 0;

while((length=fileReader.read(buf))!=-1){

System.out.println("内如是:" + new String(buf, 0, buf.length));

}

//4.关闭资源

fileReader.close();

}

//每次一个字符

public static void readDate() throws IOException{

//1.定位目标文件:

File file = new File("c:\\data.txt");

//2,构建读取字符流的输入通道:

FileReader fileReader = new FileReader(file);

//3.读取数据

int content = 0;

while((content=fileReader.read())!=-1){

System.out.println((char)content);

}

fileReader.close();

}

}

推荐阅读更多精彩内容