PrintStream和PrintWriter的源码理解

原创 2018年04月17日 21:10:51

PrintStream和PrintWriter的源码理解

1.PrintStream

    A PrintStream adds functionality to another output stream ,namely the ablity to print representations of various data coventiontly . Two other features are provided as well . unlike other output streams , a PrintStream never throws an IOException ; Instead , exceptional situations  merely set an internal flag that can be tested via the checkError method . Optionally , a PrintStream can be created so as to flush automatically ; this means that the flush method is automatically invoked after a byte array is written , one of the println methods is invoked , or a newline character or byte('\n') is written .

All characters printed by a PrintStream are converted into bytes by the  platform's default character encoding . the PrintWriter class should be used in the situations that require writing characters rather than bytes.

说明几点:

  •                   PrintStream在另一个输出流上面添加了功能,比如方便的打印不同形式的数据
  • 其他功能:能够自动flush,从不产生异常
  • PrintStream只是设置了一个内部标识,当PrintStream出错时,将标识置为true ,这个能通过方法checkError检测出来
  • 用平台相关编码将字符转换成字节
  • 什么情况下自动flush:  1)当写”字节数组“的时候
  •                                      2)当任何一个println方法被调用的时候
  •      3)写一个换行符(newline character)
  •       4)   写的string里面有换行符(byte '\n')
废话不说,分析源码:



















PrintStream和PrintWriter的区别

PrintStream和PrintWriter的API几乎相同,都能输出各种形式的数据,构造方法也几乎相同 PrintWriter多了个接受Writer参数 API比较: 那么,它们的区别究竟在...
  • zhhtao89
  • zhhtao89
  • 2015-12-01 14:45:07
  • 1318

java 输出流中的PrintStream 和 PrintWriter有什么区别

  • 2014年03月16日 09:35
  • 1.05MB
  • 下载

PrintStream与PrintWriter的区别

有一天在进行网络编程的练习时,发现如果使用PrintStream进行输出,科
  • u012324819
  • u012324819
  • 2014-10-06 10:27:14
  • 853

PrintStream类和PrintWriter类

PrintStream主要操作byte流,而PrintWriter用来操作字符流。读取文本文件时一般用后者。 java的一个字符(char)是16bit的,一个BYTE是8bit的 Prin...
  • woolnil
  • woolnil
  • 2013-06-28 14:58:39
  • 3427

对于PrintStream 和PrintWriter的理解 以及各种编码格式 以及编码和解码的解释

PrintStream: 是一个字节打印流,System.out对应的类型就是PrintStream。 它的构造函数函数可以接收三种数据类型的值。 1,字符串路径。 2,File对象。 3,...
  • huxiaochao_6053
  • huxiaochao_6053
  • 2016-12-24 18:09:19
  • 480

JAVA中常用IO流类: PrintStream和PrintWriter

PrintStream PrintStream在OutputStream基础之上提供了增强的功能,即可以方便地输出各种类型的数据(而不仅限于byte型)的格式化表示形式。PrintStream的方法...
  • caixiexin
  • caixiexin
  • 2011-08-25 20:12:52
  • 41338

OutputStreamWriter, PrintWriter, BufferedWriter, FileWrite, PrintStream

先看一个示例,当然实际不会这么用,这里只是说明一下三者的区别。 import java.io.*;   public class WriterDemo  {     public st...
  • hhitom
  • hhitom
  • 2016-03-07 13:33:50
  • 1920

PrintWriter、PrintStream的苦头 ------缓冲区问题

由于PrintWriter的简便性,即只需要print()语句即可输出任何内容,因此用到这个类的次数非常多,但是我经常会忽视在构造方法中:new PrintWriter(new FileOutputS...
  • xiazdong
  • xiazdong
  • 2011-10-29 12:40:18
  • 2342

Java IO操作——打印流(PrintStream、PrintWriter)的使用

学习目标 掌握打印流的操作 掌握格式化输出 打印流 在整个IO包中,打印流是输出信息做方便的类,主要包含字节打印流(PrintStream)和字符打印流(PrintWriter)。打印流提供了...
  • u013087513
  • u013087513
  • 2016-07-21 12:34:08
  • 2284

关于PrintWriter和PrintStream的差异

PrintStream类和PrintWriter类   PrintStream类是过滤器类中一个不可疏忽的成员,最大约的规范输出即将借助于它——我们常用的System.out变量即便PrintStr...
  • tt_zhang
  • tt_zhang
  • 2012-06-01 23:05:35
  • 1049
收藏助手
不良信息举报
您举报文章:PrintStream和PrintWriter的源码理解
举报原因:
原因补充:

(最多只允许输入30个字)