百木园-与人分享,
就是让自己快乐。

文件输入输出处理(三)-字符流

大佬的理解->《Java IO(四) -- 字符流》

FileReader字符流读取文件,更适合用于读取文件,可以读取中文

1、FileReader

1.1 初始化

FileReader(File file)
FileReader(String fileName)

1.2 读取文件内容

read() 按单个字符读取
read(char cbuf[]) 按字符数组长度读取

案例:按字符数组读取

try(
    //初始化字符读取流
    FileReader frd =   new FileReader(\"D:/test/test1.txt\");
){
    //定义一个可变字符串对象
    StringBuilder sbd = new StringBuilder();

    //定义缓冲字符数组
    char[] chars = new char[5];

    int hasRead = 0; //读取到的字符长度
    while((hasRead = frd.read(chars))>0){
        sbd.append(new String(chars,0,hasRead));
        System.out.println(\"每次读取:\"+sbd.toString());
    }

    //输出文件内容
    System.out.println(\"文件全部内容:\"+sbd.toString());
    System.out.println(\"文件读取成功!\");

} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}

2、FileWriter

2.1 初始化

FileReader(String fileName)
FileReader(File file)

2.2 写入文件内容

write(String str)
write(String str, int off, int len)
write(char cbuf[])
write(char cbuf[], int off, int len)

案例:字符流直接写入字符串

 //FileWriter 字符流写文件基本用法,可以直接写字符
      
try( FileWriter fwr=  new FileWriter(\"D:/test/test2.txt\")){

    //定义写入文件
    String string = \"KH96,正在学习字符流写入文件\";

    //直接写入目标文件
    fwr.write(string);

    //刷新缓冲区
    fwr.flush(); //一定要刷新缓冲区

    System.out.println(\"字符流写入成功!!!\");
}catch (Exception e){
    e.printStackTrace();
}

来源:https://www.cnblogs.com/xiaoqigui/p/16390109.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 文件输入输出处理(三)-字符流

相关推荐

  • 暂无文章