使用打印流优化数据输出 | 带你学《Java语言高级特性》之六十五

上一篇:“有限”的OutputStream | 带你学《Java语言高级特性》之六十四

为了弥补原始的OutputStream功能的不足,java.io包为开发者提供了打印流:PrintStream类和PrintWriter类,本节将为读者介绍其基本内容和使用方法。

【本节目标】
通过阅读本节内容,你将了解到打印流相关类的相关定义和继承关系,了解其相关功能,学会使用打印流实现数据的简单输出和格式化输出的功能。

打印流

但是既然所有的开发者都已经发现了原始中的OutputStream功能的不足,设计者也一定可以发现,所以为了解决输出问题,在java.io包中提供有打印流:PrintStream、PrintWriter。
PrintStream:

public class PrintStream extends FilterOutputStream implements Appendable, Closeable
构造方法:public PrintStream(OutputStream out);

PrintWriter:

public class PrintWriter extends Writer
构造方法:public PrintWriter(OutputStream out);

使用打印流优化数据输出 | 带你学《Java语言高级特性》之六十五
打印流

下面使用PrintWriter来实现数据的输出操作。
范例:数据输出

import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintWriter;
public class JavaAPIDemo {
    public static void main(String[] args) throws Exception {
        File file = new File("d:" + File.separator +"mldn.txt");   //定义操作文件
        PrintWriter pu = new PrintWriter(new FileOutputStream(file));
        pu.println("姓名:小强子");
        pu.print("年龄:");
        pu.print(78);
        pu.close();
    }
}

从JDK1.5开始,PrintWriter类里面追加有格式化输出的操作支持:

public PrintWriter format(String format, Object... args)

范例:格式化输出

import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintWriter;
public class JavaAPIDemo {
    public static void main(String[] args) throws Exception {
        File file = new File("d:" + File.separator +"mldn.txt");   //定义操作文件
        PrintWriter pu = new PrintWriter(new FileOutputStream(file));
        String name="小强子子";
        int age=78;
        double salary=72823.6323113;
        pu.printf("姓名:%s、年龄:%d、月收入:%9.2f",name,age,salary);
        pu.close();
    }
}    //姓名:小强子子、年龄:78、收入:72823.63

比起直接使用OutputStream类,那么使用PrintWriter、PrintStream类的处理操作会更加简单。以后只要是程序进行内容输出的时候全部使用打印流。

想学习更多的Java的课程吗?从小白到大神,从入门到精通,更多精彩不容错过!免费为您提供更多的学习资源。
本内容视频来源于阿里云大学

下一篇:System类助力标准IO实现 | 带你学《Java语言高级特性》之六十六
更多Java面向对象编程文章查看此处

上一篇:网络通信时字节序转换原理与网络字节序、大端和小端模式


下一篇:可否举例说明你在工作中是如何优化前端代码的?