首页 > 编程笔记 > Java笔记 阅读:11

Java PrintWriter的用法(附带实例)

Java 提供了大量与“流”操作和处理相关的类。它们把数据传送的细节封装起来。利用这些类编程,程序员就可以不用考虑底层设备及操作系统的细节。

Java 中的“流”类位于 java.io 包或 java.nio 包中,其中 PrintWriter 类的层次结构如下图所示:


图 1 I/O 流类的层次结构图

Java 中的 PrintWriter 在功能上与 PrintStream 类似,向字符输出流输出对象的格式化表示形式。除了接收文件名字符串和 OutputStream 实例作为变量之外,PrintWriter还可以接收Writer对象作为输出的对象。

这个类实现 PrintStream 中的所有输出方法。PrintWriter 的所有 print() 和 println() 都不会抛出 I/O 异常。客户通过 PrintWriter 的 checkError() 方法可以查看写数据是否成功,如果返回 true 表示成功,否则表示出现了错误。

PrintWriter 和 PrintStream 的 println(String s) 方法都能输出字符串。两者的区别是 PrintStream 只能使用本地平台的字符编码,而 PrintWriter 使用的字符编码取决于所连接的 Writer 类所使用的字符编码。

PrintWriter 的构造方法如下:
以下是一个简单的 PrintWriter 用法示例。

【实例】PrintWriter 类的应用。使用 PrintWriter 向文本文件中写入各种类型的数据。
import java.io.*;

public class PrintWriterExample {
    public static void main(String[] args) {
        try {
            // 创建一个 PrintWriter 对象,指定输出文件
            PrintWriter writer = new PrintWriter(new File("d:\\output.txt"));
            // 输出文本内容
            writer.println(" 这是一段文本内容 ");
            writer.print(" 这是另一段 ");
            writer.print(" 文本内容 ");
            // 输出变量和数据
            int count = 10;
            double price = 19.99;
            writer.println(" 产品数量 :" + count);
            writer.println(" 产品价格 :" + price);
            // 关闭 PrintWriter 对象
            writer.close();
        } catch (FileNotFoundException e) {
            System.out.println(" 文件不存在!");
            e.printStackTrace();
        }
    }
}
运行该程序,打开“d:\\output.txt”文件,结果如下图所示。


图 1 运行结果

相关文章