📌  相关文章
📜  Java.io.PrintWriter类(1)

📅  最后修改于: 2023-12-03 15:01:35.033000             🧑  作者: Mango

Java.io.PrintWriter类介绍

概述

java.io.PrintWriter 是 Java 编程语言中的一个类,它提供了用于向字符输出流写入文本的方法。PrintWriter 继承自 Writer 类,因此可以通过它的实例来对文件、网络连接或标准输出等进行文本写入。

特性
  • 可以使用 PrintWriter 类来写入字符串、字符或表示各种基本数据类型的值。
  • 它提供了自动刷新缓冲区的选项,确保输出文本的即时性。
  • 与其他的字符输出流(如 BufferedWriter)相比,PrintWriter 具有更方便的方法用于写入数据。
  • 可以指定字符编码,以便在不同的环境中正确地处理字符数据。
主要方法

以下是 PrintWriter 类的一些常用方法:

构造方法
  • PrintWriter(Writer out):使用给定的 Writer 对象创建一个新的 PrintWriter,默认情况下不会自动刷新缓冲区。
  • PrintWriter(OutputStream out):使用给定的 OutputStream 对象创建一个新的 PrintWriter,默认情况下不会自动刷新缓冲区。
  • PrintWriter(Writer out, boolean autoFlush):使用给定的 Writer 对象创建一个新的 PrintWriter,可以选择是否自动刷新缓冲区。
  • PrintWriter(OutputStream out, boolean autoFlush):使用给定的 OutputStream 对象创建一个新的 PrintWriter,可以选择是否自动刷新缓冲区。
写入操作
  • void print(boolean value):将一个布尔值写入输出流。
  • void print(char value):将一个字符写入输出流。
  • void print(int value):将一个整数写入输出流。
  • void print(long value):将一个长整数写入输出流。
  • void print(float value):将一个浮点数写入输出流。
  • void print(double value):将一个双精度浮点数写入输出流。
  • void print(String value):将一个字符串写入输出流。
  • void println():写入一个行分隔符。
  • void println(boolean value):将一个布尔值及行分隔符写入输出流。
  • void println(char value):将一个字符及行分隔符写入输出流。
  • void println(int value):将一个整数及行分隔符写入输出流。
  • void println(long value):将一个长整数及行分隔符写入输出流。
  • void println(float value):将一个浮点数及行分隔符写入输出流。
  • void println(double value):将一个双精度浮点数及行分隔符写入输出流。
  • void println(String value):将一个字符串及行分隔符写入输出流。
其他方法
  • void flush():刷新输出流并强制写出所有缓冲的数据。
  • void close():关闭输出流,释放相关的系统资源。
使用示例

下面是一个使用 PrintWriter 类的简单示例:

import java.io.*;

public class PrintWriterExample {
    public static void main(String[] args) {
        try {
            PrintWriter writer = new PrintWriter(System.out); // 创建 PrintWriter
            writer.println("Hello, World!"); // 写入字符串
            writer.println(42); // 写入整数
            writer.printf("PI = %.4f", Math.PI); // 格式化输出
            writer.flush(); // 刷新输出流
            writer.close(); // 关闭输出流
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

以上代码将会输出以下结果:

Hello, World!
42
PI = 3.1416
总结

java.io.PrintWriter 类提供了一种便捷的方式来向字符输出流写入文本数据。它具有丰富的方法和选项,可以满足不同场景下的输出需求。通过使用 PrintWriter,程序员可以轻松地将各种类型的数据写入到文本中,并进行格式化输出。