FileReader与FileWriter讲解
Reader
- int read()
读取单个字符。作为整数读取的字符,范围在 0 到 65535 之间 (0x00-0xffff)(2个字节的Unicode码),如果已到达流的末尾,则返回 -1 - int read(char[] cbuf)
将字符读入数组。如果已到达流的末尾,则返回 -1。否则返回本次读取的字符数。 - int read(char[] cbuf,int off,int len)
将字符读入数组的某一部分。存到数组cbuf中,从off处开始存储,最多读len个字符。如果已到达流的末尾,则返回 -1。否则返回本次读取的字符数。 - public void close() throws IOException
关闭此输入流并释放与该流关联的所有系统资源
Writer
- void write(int c)
写入单个字符。要写入的字符包含在给定整数值的 16 个低位中,16 高位被忽略。 即写入0 到 65535 之间的Unicode码。 - void write(char[] cbuf)
写入字符数组。 - void write(char[] cbuf,int off,int len)
写入字符数组的某一部分。从off开始,写入len个字符 - void write(String str)
写入字符串。 - void write(String str,int off,int len)
写入字符串的某一部分。 - void flush()
刷新该流的缓冲,则立即将它们写入预期目标。 - public void close() throws IOException
关闭此输出流并释放与该流关联的所有系统资源。
读取文件
1.建立一个流对象,将已存在的一个文件加载进流。
FileReader fr = new FileReader(new File(“Test.txt”));
2.创建一个临时存放数据的数组。
char[] ch = new char[1024];
3.调用流对象的读取方法将流中的数据读入到数组中。
fr.read(ch);
4. 关闭资源。
fr.close();
package BYSSSExer1;
import org.junit.Test;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
/**
* @author Baiysmart
* @create 2020-03-27 10:57
*/
public class Reader {
//对read()操作升级:使用read的重载方法
//方式一
@Test
public void testFileReader1() throws IOException {
//1 File类的实例化
File file1 = new File("hello.txt");
//2 FileReader流的实例化
FileReader fr = new FileReader(file1);
//3 读入的操作
//read(char[] cbuf):返回每次读入cbuf数组中字符的geshu
//如果达到文件末尾,返回-1
char[] cbuf = new char