Java IO(十九)PrintStream 和 PrintWriter
Java IO(十九)PrintStream 和 PrintWriter
一、介绍
(一)、PrintStream
(二)、PrintWriter
PrintWriter 是字符类型的打印输出流,它继承于Writer。PrintStream 用于向文本输出流打印对象的格式化表示形式。它实现在 PrintStream 中的所有 print 方法。它不包含用于写入原始字节的方法,对于这些字节,程序应该使用未编码的字节流进行写入。
二、构造方法
(一)、PrintStream

(二)、PrintWriter

三、常用API
(一)、PrintStream
PrintStream append(char c) //将指定的字符附加到此输出流。
PrintStream append(CharSequence csq) // 将指定的字符序列附加到此输出流。
PrintStream append(CharSequence csq, int start, int end) // 将指定字符序列的子序列附加到此输出流。
boolean checkError() // 刷新流并检查其错误状态。
void close() // 关闭流。
void flush() // 刷新流。
PrintStream format(Locale l, String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此输出流。
PrintStream format(String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此输出流。
void print(boolean b) // 打印布尔值。
void print(char c) // 打印一个字符
void print(char[] s) // 打印字符数组。
void print(double d) // 打印双精度浮点数。
void print(float f) // 打印浮点数。
void print(int i) // 打印一个整数。
void print(long l) // 打印一个长整数。
void print(Object obj) // 打印一个对象。
void print(String s) // 打印字符串。
PrintStream printf(Locale l, String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此输出流的便利方法。
PrintStream printf(String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此输出流的便利方法。
void println() // 通过写入行分隔符字符串来终止当前行。
void println(boolean x) // 打印一个布尔值,然后终止该行。
void println(char x) // 打印一个字符,然后终止该行。
void println(char[] x) // 打印一个字符数组,然后终止该行。
void println(double x) // 打印一次,然后终止行。
void println(float x) // 打印一个浮点数,然后终止该行。
void println(int x) // 打印一个整数,然后终止行。
void println(long x) // 打印很长时间,然后终止行。
void println(Object x) // 打印一个对象,然后终止该行。
void println(String x) // 打印一个字符串,然后终止行。
void write(byte[] buf, int off, int len) // 从指定的字节数组写入 len个字节,从偏移 off开始到此流。
void write(int b) // 将指定的字节写入此流。
(二)、PrintWriter
PrintWriter append(char c) // 将指定的字符附加到此输出流。
PrintWriter append(CharSequence csq) // 将指定的字符序列附加到此输出流。
PrintWriter append(CharSequence csq, int start, int end) // 将指定字符序列的子序列附加到此输出流。
boolean checkError() // 如果流未关闭,请刷新流并检查其错误状态。
void close() // 关闭流并释放与之相关联的任何系统资源。
void flush() // 刷新流。
PrintWriter format(Locale l, String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此写入程序。
PrintWriter format(String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入此写入程序。
void print(boolean b) // 打印布尔值。
void print(char c) // 打印一个字符
void print(char[] s) // 打印字符数组。
void print(double d) // 打印双精度浮点数。
void print(float f) // 打印浮点数。
void print(int i) // 打印一个整数。
void print(long l) // 打印一个长整数。
void print(Object obj) // 打印一个对象。
void print(String s) // 打印字符串。
PrintWriter printf(Locale l, String format, Object... args) // 使用指定的格式字符串和参数将格式化的字符串写入该writer的方便方法。
PrintWriter printf(String format, Object... args) // 使用指定的格式// 符串和参数将格式化的字符串写入该writer的方便方法。
void println() // 通过写入行分隔符字符串来终止当前行。
void println(boolean x) // 打印一个布尔值,然后终止该行。
void println(char x) // 打印一个字符,然后终止该行。
void println(char[] x) // 打印字符数组,然后终止行。
void println(double x) // 打印双精度浮点数,然后终止行。
void println(float x) // 打印一个浮点数,然后终止该行。
void println(int x) // 打印一个整数,然后终止该行。
void println(long x) // 打印一个长整型,然后终止行。
void println(Object x) // 打印一个对象,然后终止该行。
void println(String x) // 打印一个字符串,然后终止行。
void write(char[] buf) // 写入一个字符数组。
void write(char[] buf, int off, int len) // 写一个字符数组的一部分。
void write(int c) // 写一个字符
void write(String s) // 写一个字符串
void write(String s, int off, int len) // 写一个字符串的一部分。
四、实例
public class PrintDemo {
    public static void main(String[] args) {
        testPrintStream();
        testPrintWriter();
    }
    /**
     *  PrintStream 测试
     */
    public static void testPrintStream() {
        try {
            PrintStream ps = new PrintStream("stream.txt");
            ps.write("abcdefg".getBytes());
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
     }
    /**
     * PrintWriter 测试
     */
    public static void testPrintWriter() {
        try {
            PrintWriter pw = new PrintWriter("writer.txt");
            pw.write(new char[] {'A','B','C','D','E'});
            pw.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Java IO(十九)PrintStream 和 PrintWriter的更多相关文章
- “全栈2019”Java第九十九章:局部内部类与继承详解
		难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ... 
- “全栈2019”Java第二十九章:数组详解(中篇)
		难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ... 
- “全栈2019”Java第十九章:关系运算符、条件运算符和三元运算符
		难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ... 
- Java IO(九)FilterInputStream 和 FilterOutputStream
		Java IO(九)FilterInputStream 和 FilterOutputStream 一.介绍 FilterInputStream 和 FilterOutputStream 是过滤字节输入 ... 
- 系统学习 Java IO (十六)----这么多类,应该用哪个?
		目录:系统学习 Java IO---- 目录,概览 Java IO目的和功能 Java IO 包含 InputStream,OutputStream,Reader 和 Writer 类的许多子类. 原 ... 
- 缓冲字符流 java.io.BufferedWriter ,java.io.BufferedReader,缓冲字符输出流:PrintWriter
		package seday07; import java.io.IOException;import java.io.PrintWriter; /*** @author xingsir * 缓冲字符流 ... 
- JAVA提高十九:WeakHashMap&EnumMap&LinkedHashMap&LinkedHashSet深入分析
		因为最近工作太忙了,连续的晚上支撑和上班,因此没有精力来写下这篇博客,今天上午正好有一点空,因此来复习一下不太常用的集合体系大家族中的几个类:WeakHashMap&EnumMap&L ... 
- 系统学习 Java IO (十二)----数据流和对象流
		目录:系统学习 Java IO---- 目录,概览 DataInputStream/DataOutputStream 允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型. 要想使用 ... 
- 系统学习 Java IO (十五)----字符读写 Reader/Writer 其他子类
		目录:系统学习 Java IO---- 目录,概览 跟踪行号的缓冲字符输入流 LineNumberReader LineNumberReader 类是一个 BufferedReader ,用于跟踪读取 ... 
- 系统学习 Java IO (十四)----字符读写缓存和回退 BufferedReader/BufferedWriter & PushbackReader
		目录:系统学习 Java IO---- 目录,概览 BufferedReader BufferedReader 类构造器接收一个 Reader 对象,为 Reader 实例提供缓冲. 缓冲可以加快 I ... 
随机推荐
- socket编程之并发回射服务器
			使用到的函数: // 子进程返回0,父进程返回子进程ID,出错返回-1 pid_t fork(void); pid_t wait(int *wstatus); // 最常用的option是WNOHAN ... 
- Jetson AGX Xavier安装TensorFlow
			参考https://docs.nvidia.com/deeplearning/frameworks/install-tf-jetson-platform/#prereqs 1. 安装系统包 sudo ... 
- 简单使用媒体查询@media
			@media 可以针对不同的屏幕尺寸设置不同的样式,特别是如果你需要设置设计响应式的页面,@media 是非常有用的. 那媒体查询该如何使用呢? 一.铺垫 1.首先我们在使用 @media 的时候需要 ... 
- 王颖奇 20171010129《面向对象程序设计(java)》第十七周学习总结
			实验十七 线程同步控制 实验时间 2018-12-10 学习总结: 1.Java通过多线程的并发运行提高系统资源利用 率,改善系统性能. 2.假设有两个或两个以上的线程共享 某个对象,每个线程都调用 ... 
- learn from collection framework design
			最难忍受的痛苦,也许是想干一件事情而又不去干.--罗曼·罗兰 前言 本篇文章算是拾人牙慧吧,偶尔谷歌到一个能很好把collection framework design讲好的文档,一是为了总结提升,也 ... 
- 带你看看Java的锁(二)-Semaphore
			前言 简介 Semaphore 中文称信号量,它和ReentrantLock 有所区别,ReentrantLock是排他的,也就是只能允许一个线程拥有资源,Semaphore是共享的,它允许多个线程同 ... 
- JAVA知识总结(二):封装
			时隔近一年,我突然想起来这个文章还没有发完,所以就继续开始写.也不知道自己上次写到哪里了,不管了这里从面向对象的三个特性说起. 类和对象 在这之前,我们先了解什么是对象,已经什么是面向对象?对象:万物 ... 
- 白话马尔科夫链蒙特卡罗方法(MCMC)
			前言 你清茶园不是人待的地方! 里面的个个都是人才,说话又好听--就是我太菜了啥也听不懂,这次期中还考的贼**烂,太让人郁闷了. 最近课上讲这个马尔科夫链蒙特卡罗方法,我也学得一塌糊涂.这时我猛然想起 ... 
- Android 编译系统
			1,Makefile编译方式 TARGET: PREREQUISITES COMMANDS 1,TARGET是需要生成的目标文件,PREREQUISTIES代表了目标所依赖的所有文件. 2,简单的Ma ... 
- 1、Fiddler基础
			1.抓取https请求 前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书. 一.网页不安全 1.用fiddl ... 
