JavaIO学习:打印流

打印流

打印流是输出信息最方便的类,注意包含字节打印流:PrintStream和字符打印流:PrintWriter。

打印流提供了非常方便的打印功能,可以打印任何类型的数据信息,例如:小数,整数,字符串。

回顾:

之前打印信息需要使用OutputStream但是这样,所有数据输出会非常麻烦,String-->byte[],打印流中可以方便进行输出,

 

打印流好处

通过定义的构造方法可以发现,有一个构造方法可以直接接收OutputStream类的实例,与OutputStream相比起来,PrintStream可以更方便的输出数据,相当于把OutputStream类重新包装了一下,使之输出更方便。

格式化输出

JAVA对PrintStream功能进行了扩充,增加了格式化输出功能。直接使用Print即可。但是输出的时候需要指定输出的数据类型。

打印流:PrintStream 和PrintWriter

  • 实现将基本数据类型的数据格式转化为字符串输出。

说明:

  1. 提供了一系列重载的print()和println()方法,用于多种数据类型的输出。
  2. PrintStream和PrintWriter的输出不会抛出IOException异常。
  3. PrintStream和PrintWriter有自动flush功能。
  4. PrintStream 打印的所有字符都使用平台的默认字符编码转换为字节。 在需要写入字符而不是写入字节的情况下,应该使用 PrintWriter 类。
  5. System.out返回的是PrintStream的实例。

示例代码:

public void test2() {
PrintStream ps
= null;
try { FileOutputStream fos = new FileOutputStream(new File("D:\cai\a.txt")); // 创建打印输出流,设置为自动刷新模式(写入换行符或字节 ' ' 时都会刷新输出缓冲区) ps = new PrintStream(fos, true);
if (ps != null) {// 把标准输出流(控制台输出)改成文件 System.setOut(ps); }
for (int i = 0; i <= 255; i++) { // 输出ASCII字符 System.out.print((char) i); if (i % 50 == 0) { // 每50个数据一行 System.out.println(); // 换行 } }
}
catch (FileNotFoundException e) { e.printStackTrace();
}
finally { if (ps != null) { ps.close(); } } }
原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/11328383.html