分享::以文件字符流来实现文件读写操作
package net.chengyang.lesson11;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/**
- 功能:以文件字符流来实现文件读写操作
- 作者:caohao
- 日期:2019年5月23日
*/
public class FileReadWrite02 {
public static void main(String[] args) {
//创建File对象,指向文件
File file =new File(“flower.txt”);
try{
//创建指示文件
file.createNewFile();
//指示用户文件创建成功
System.out.println(“文件[ " + file.getAbsolutePath() +”]创建成功!");
//创建文件字符输出流
FileWriter fw =new FileWriter(file);
//1.逐个字符写入文件
fw.write(‘f’);
fw.write(‘l’);
fw.write(‘o’);
fw.write(‘w’);
fw.write(‘e’);
fw.write(‘r’);
//提示用户逐个字符写入成功
System.out.println(“逐个字符写入成功!”);
//2.将字符串写入文件
fw.write("\nyou are so beautiful!");
//提示用户字符串写入成功
System.out.println(“字符串写入文件成功!” );
//3.将字符数组写入文件
char[] cs = {’\n’,‘I’,’ ‘,‘l’,‘o’,‘v’,‘e’,’ ‘,‘y’,‘o’,‘u’,’.’};
fw.write(cs);
//提示用户字符数组写入成功
System.out.println(“字符数组写入文件成功!”);
//关闭文件字符输出流
fw.close();
//创建文件字符输入流
FileReader fr =new FileReader(file);
//1.逐个字符读取文件内容,采用while循环
int i;
while((i = fr.read()) != -1){
System.out.print((char)i);
}
System.out.println();
//2.以字节数组为单位读取文件内容,采用while循环
fr = new FileReader(file);
char[] cf = new char[6];
while (fr.read(cf) != -1) {
for (int k = 0; k < cf.length; k++) {
System.out.print(cf[k]);
}
}
System.out.println();
}catch(IOException e){
System.err.println("文件[ " + file.getAbsolutePath() +"]创建失败!");
}
}
}