JAVA的IO流:打印流

打印流:

打印流是输出信息最方便的类,注意包含字节打印流PrintStream和字符打印流:PrintWriter。打印流提供了很是方便的打印功能,java

能够打印任何类型的数据信息,例如:小数,整数,字符串。设计模式

回顾:spa

以前打印信息须要使用OutputStream可是这样,全部数据输出会很是麻烦,String-->byte[],打印流中能够方便进行输出,设计

PrintStream类中经常使用方法:3d

在这个类中定义了不少print()和println()方法,System.out.print()方法能够打印任何数据类型。code

 

构造方法:对象

public PrintStream(OutputStream out)  --指定输出位置

此构造方法接收OutputStream的子类,blog

打印流好处:

经过定义的构造方法能够发现,有一个构造方法能够直接接收OutputStream类的实例,与OutputStream相比起来,PrintStream能够更方便的输出数据,字符串

至关于把OutputStream类从新包装了一下,使之输出更方便。it

 

实例1:使用printStream输出信息。

package 类集;
import java.io.* ;
public class PrintDemo01{
    public static void main(String arg[]) throws Exception{
        PrintStream ps = null ;        // 声明打印流对象
        // 若是如今是使用FileOuputStream实例化,意味着全部的输出是向文件之中
        ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
        ps.print("hello ") ;
        ps.println("world!!!") ;
        ps.print("1 + 1 = " + 2) ;
        ps.close() ;
    }
};

执行结果:

也就是说,将FileoutputStream类的功能进行了包装一下。这样的设计在JAVA中称为装饰设计模式。

 

格式化输出:

JAVA对PrintStream功能进行了扩充,增长了格式化输出功能。直接使用Print便可。可是输出的时候须要指定输出的数据类型。

这相似C语言。

实例2:代码以下:

package 类集; import java.io.* ; public class PrintDemo01{ public static void main(String arg[]) throws Exception{ PrintStream ps = null ;        // 声明打印流对象 // 若是如今是使用FileOuputStream实例化,意味着全部的输出是向文件之中
        ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ; String name = "李兴华" ;    // 定义字符串
        int age = 30 ;                // 定义整数
        float score = 990.356f ;    // 定义小数
        char sex = 'M' ;            // 定义字符
        ps.printf("姓名:%s;年龄:%d;成绩:%f;性别:%c",name,age,score,sex) ; ps.close() ; } };

执行结果:

若是以为要使用不少%s,%d,%c没法记住的话,实例能够所有使用“%s”表示。

import java.io.* ;
public class PrintDemo03{
    public static void main(String arg[]) throws Exception{
        PrintStream ps = null ;        // 声明打印流对象
        // 若是如今是使用FileOuputStream实例化,意味着全部的输出是向文件之中
        ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
        String name = "李兴华" ;    // 定义字符串
        int age = 30 ;                // 定义整数
        float score = 990.356f ;    // 定义小数
        char sex = 'M' ;            // 定义字符
        ps.printf("姓名:%s;年龄:%s;成绩:%s;性别:%s",name,age,score,sex) ;
        ps.close() ;
    }
};
相关文章
相关标签/搜索