FileReader是字符流,即按照字符来操作io
FileReader相关方法
- new FileReader(filePath)
- read():每次读取单个字符,返回该字符,如果到文件末尾返回 -1
- read(char[]):批量读取多个字符到数组,返回读取到的字符数,如果到文件末尾返回 -1
相关API:
- new String(char[]) : 将char[]转换成String
- new String(char,off,len) :将char[]的指定部分转换成String
代码示例
import java.io.FileReader;
import java.io.IOException;
public class FileReader_ {
public static void main(String[] args) {
// 创建FileReader对象
FileReader fileReader = null;
int readLen = 0;
char[] buf = new char[1024];
try {
fileReader = new FileReader("src\\test.txt");
// 循环读取 使用read(buf),返回的是实际读取到的字符数
// 如果返回-1,说明读到文件结束
while ((readLen = fileReader.read(buf)) != -1) {
System.out.println(new String(buf, 0, readLen));
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fileReader != null) {
try {
fileReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
使用FileWriter写入数据
public static void writeDate(String data) {
// 创建FileWrite对象
FileWriter fileWriter = null;
try {
fileWriter = new FileWriter("src\\data.txt");
fileWriter.write(data);
} catch (IOException e) {
e.printStackTrace();
} finally {
// 对象FileWriter,一定要关闭流,或者flush才能真正的把数据写入到文件
try {
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
网友评论