【IO】BufferedWriter

素颜马尾好姑娘i 2022-05-31 08:18 193阅读 0赞

前言

Github:https://github.com/yihonglei/jdk-source-code-reading(java-io)

一 BufferedWriter 概述

BufferedWriter是缓冲字符输出流,它继承于Writer。BufferedWriter的作用是为其他字符输出流添加一些缓冲功能。

BufferedWriter通过字符数组来缓冲数据,当缓冲区满或者用户调用flush()函数时,

它就会将缓冲区的数据写入到输出流中。使用BufferedWriter时,写入的数据并不会

先输出到目的地,而是先存储至缓冲区中。如果缓冲区中的数据满了,才会一次对目的地进行写出。

二 BufferedWriter 构造器和方法分析

构造器

public BufferedWriter(Writer out);

public BufferedWriter(Writer out,int sz);

重要方法

void close();

关闭流。

void flush();

将流强化刷新到目标媒介。

void newLine();

写入行分隔符。行分隔符字符串是由系统性line.separator定义,而不一定是一个换行符(’\n’)字符。

void write(int c);

写入单个字符到字符输入流。

void write(String s, int off, int len);

写入一个字符串从off位置的len长度到字符输入流,字符串多余部分舍弃。

void write(char[] cbuf, int off, int len);

写入一个字节数组从off位置开始len长度的数据到文件输入流,多余部分舍弃。

三 BufferedWriter 实例

  1. package com.jpeony.io.readerwriter;
  2. import java.io.BufferedWriter;
  3. import java.io.File;
  4. import java.io.FileWriter;
  5. import java.io.IOException;
  6. /**
  7. * @author yihonglei
  8. */
  9. public class BufferedWriterSimple {
  10. public static void main(String[] args) {
  11. // 指定构建文件
  12. File file = new File("C:\\mycode\\hello.txt");
  13. // 创建字符缓冲输出流
  14. try (FileWriter writer = new FileWriter(file);
  15. BufferedWriter bw = new BufferedWriter(writer)) {
  16. // 要写数据
  17. String str = "abcd";
  18. char[] data = str.toCharArray();
  19. // 写入
  20. bw.write(data);
  21. } catch (IOException e) {
  22. e.printStackTrace();
  23. }
  24. }
  25. }

发表评论

表情:
评论列表 (有 0 条评论,193人围观)

还没有评论,来说两句吧...

相关阅读