打印流----PrintStream、PrintWriter
 
 文章目录
 打印流----PrintStream、PrintWriter前言实现原理PrintStream类的主要方法案例演示使用PrintStream向文件输出数据运行结果使用打印流进行格式化输出数据运行结果
     
     总结
   
  
 
 
前言
 
在JavaIO包中,打印流是输出信息最方便的类,主要包含字节打印流(PrintStream)、字符打印流(PrintWriter)。
 
打印流具有非常强大的打印功能,可以打印任何数据类型的数据,如小数、正数、浮点数、字符串等。
 
由于字节打印流和字符打印流操作类似,这次主要讲解一下字节打印流PrintStream,有兴趣的小伙伴也可以查看jdk文档哦~
 
实现原理
 
将一个输出流的实例传递到打印流后,可以更方便输出内容,也就是说,是打印流把输出流重新装饰了一下,就像送别人礼物,需要把礼物装饰一下才更好看,此种设计也被称为装饰设计模式。
 
 
PrintStream类的主要方法
 
序号方法类型描述
1public PrintStream(File file) throws IOException构造通过一个File对象实例化PrintStream类2public PrintStream(OutputStream out)构造接收OutputStream对象,实例化PrintStream对象3public PrintfStream printf(Locale l,String format, Objects…args)普通根据指定的Locale进行格式化输出4public PrintStream printf(String format, Objects…args)普通根据本地环境格式化输出5public void print(boolean b)普通此方法被重载很多次,输出任意数据6public void println(boolean b)普通此方法被重载很多次,输出任意数据后换行
案例演示
 
使用PrintStream向文件输出数据
 
package chapter_twelve
;
import java
.io
.File
;
import java
.io
.FileOutputStream
;
import java
.io
.OutputStream
;
import java
.io
.PrintStream
;
public class PrintStreamDemo01 {
    public static void main(String
[] args
) throws Exception
{
        File file 
= new File("D:" + File
.separator 
+ "test.txt");       
        OutputStream outputStream 
= new FileOutputStream(file
);                 
        PrintStream printStream 
= new PrintStream(outputStream
);                
        printStream
.print("Hello ");                            
        printStream
.println("World!");
        printStream
.println("I am MengDe");
        printStream
.close();
    }
}
 
运行结果
 
 
使用打印流进行格式化输出数据
 
package chapter_twelve
;
import java
.io
.File
;
import java
.io
.FileOutputStream
;
import java
.io
.OutputStream
;
import java
.io
.PrintStream
;
public class PrintStreamDemo02 {
    public static void main(String
[] args
) throws Exception
{
        File file 
= new File("D:" + File
.separator 
+ "test.txt");       
        OutputStream outputStream 
= new FileOutputStream(file
);                 
        PrintStream printStream 
= new PrintStream(outputStream
);                    
        String name 
= "曹孟德";
        int age 
= 24;
        float price 
= 9.9f;
        char c 
= 'S';
        printStream
.printf("姓名:%s\n", name
);                    
        printStream
.printf("年龄:%d\n", age
);
        printStream
.printf("价格:%f\n", price
);
        printStream
.printf("级别:%c\n", c
);                       
        printStream
.close();                           
    }
}
 
运行结果
 
 
总结
 
打印流属于装饰设计模式,使用打印流输出数据会更加方便、输出形式也多样,构造参数接收的实例化对象也可以直接是一个文件类File对象或任何字节输出流的实例,总之,太棒了哈哈,不愧为输出流的爸爸,如果还有小伙伴不太明白的话请留言私信我哦~