PrintStream与PrintWriter有何异同之处?

2026-05-28 05:110阅读0评论SEO基础
  • 内容介绍
  • 相关推荐

本文共计1201个文字,预计阅读时间需要5分钟。

PrintStream与PrintWriter有何异同之处?

前言:这两者在写入文本文件时,都在文件中写入字符串,最终都需要通过字符集的映射关系得到对应的字节序列。但是,它们在通过char得到对应字节序列的时刻不同。

前者:在写入字符串时,就会立即通过字符集的映射关系得到对应的字节序列。后者:只有在通过char得到对应字节序列时,才会通过字符集的映射关系得到对应的字节序列。

前言

这两者在往文件中写入字符串时,最终都需要通过字符集的映射关系得到对应字节。

但这二者在通过char得到对应若干字节的时机不一样,以new PrintStream( new BufferedOutputStream( new FileOutputStream("BasicFileOutput.out")));new PrintWriter( new BufferedWriter( new FileWriter("BasicFileOutput.out")))为例,前者在存字符串时,从PrintStream传到BufferedOutputStream时就已经是字节了;后者在存字符串时,直到FileWriter真正写入文件时,才将字符转换为字节。

如果PrintStream被设置为autoFlush,那么这些情况flush方法将会自动执行:写入字节数组、任何重载版本的println被调用、一个换行符(char)被写入、一个换行符的字节存储(\n)被写入。

如果PrintWriter被设置为autoFlush,那么这些情况flush方法将会自动执行:println、printf、format方法被调用。

阅读全文

本文共计1201个文字,预计阅读时间需要5分钟。

PrintStream与PrintWriter有何异同之处?

前言:这两者在写入文本文件时,都在文件中写入字符串,最终都需要通过字符集的映射关系得到对应的字节序列。但是,它们在通过char得到对应字节序列的时刻不同。

前者:在写入字符串时,就会立即通过字符集的映射关系得到对应的字节序列。后者:只有在通过char得到对应字节序列时,才会通过字符集的映射关系得到对应的字节序列。

前言

这两者在往文件中写入字符串时,最终都需要通过字符集的映射关系得到对应字节。

但这二者在通过char得到对应若干字节的时机不一样,以new PrintStream( new BufferedOutputStream( new FileOutputStream("BasicFileOutput.out")));new PrintWriter( new BufferedWriter( new FileWriter("BasicFileOutput.out")))为例,前者在存字符串时,从PrintStream传到BufferedOutputStream时就已经是字节了;后者在存字符串时,直到FileWriter真正写入文件时,才将字符转换为字节。

如果PrintStream被设置为autoFlush,那么这些情况flush方法将会自动执行:写入字节数组、任何重载版本的println被调用、一个换行符(char)被写入、一个换行符的字节存储(\n)被写入。

如果PrintWriter被设置为autoFlush,那么这些情况flush方法将会自动执行:println、printf、format方法被调用。

阅读全文