字符输入流读取文本文件,所有字符输入流的超类
java.io.Reader
专门读取文本文件
读取的方法:read()
- int read() 读取1个字符
- int read(char[] c) 读取字符数组
Reader类是抽象类,找到子类对象FileReader
构造方法:绑定数据源
参数:
- File 类型对象
- String String文件名
package cn.hiluna.demo;
import java.io.FileReader;
import java.io.IOException;
/**
* 字符输入流读取文本文件,所有字符输入流的超类
* java.io.Reader
* 专门读取文本文件
*
* 读取的方法:read()
* int read() 读取1个字符
* int read(char[] c) 读取字符数组
*
* Reader类是抽象类,找到子类对象FileReader
*
* 构造方法:绑定数据源
* 参数:
* File 类型对象
* String String文件名
*/
public class ReaderDemo {
public static void main(String[] args)throws IOException {
FileReader fileReader = new FileReader("e:\\a.txt");
int len = 0;
while ((len = fileReader.read()) != -1){
System.out.print((char)len);
}
char[] ch = new char[1024];
int len1 = 0;
while ((len1 = fileReader.read()) != -1){
System.out.println(new String(ch,0,len1));
}
fileReader.close();
}
}
字符输出流
java.io.Writer 所有字符输出流的超类
写文件,写文本文件
写的方法:write 写的方法:write
- write(int c) 写一个字符
- write(char[] c)写字符数组
- write(char[] c,int ,int)写入字符数组一部分,开始,几个
- write(String s)写入字符串
Writer类的子类对象FileWriter
- 构造方法:写入的数据目的
- File类型对象
- String类型文件名
字符输出流写数据的时候,必须要运行一个功能,刷新功能:flush()
package cn.hiluna.demo;
import java.io.FileWriter;
import java.io.IOException;
/**
* 字符输出流
* java.io.Writer 所有字符输出流的超类
* 写文件,写文本文件
*
* 写的方法:write
* write(int c) 写一个字符
* write(char[] c)写字符数组
* write(char[] c,int ,int)写入字符数组一部分,开始,几个
* write(String s)写入字符串
*
* Writer类的子类对象FileWriter
*
* 构造方法:写入的数据目的
* File类型对象
* String类型文件名
*
* 字符输出流写数据的时候,必须要运行一个功能,刷新功能
* flush()
*/
public class WruterDeni {
public static void main(String[] args)throws IOException {
FileWriter fileWriter = new FileWriter("e:\\c.txt");
//写1个字符
fileWriter.write(100);
fileWriter.flush();
//写一个字符数组
char[] c = {'a','b','c'};
fileWriter.write(c);
fileWriter.flush();
//写入字符数组的一部分
fileWriter.write(c,2,1);
fileWriter.flush();
//写入字符串
String e = "你好世界";
fileWriter.write(e);
fileWriter.flush();
fileWriter.close();
}
}