1. 程式人生 > >JAVA的IO流:打印流

JAVA的IO流:打印流

如果 system 常用方法 輸出信息 [] images size 現在 技術分享

打印流:

打印流是輸出信息最方便的類,註意包含字節打印流PrintStream和字符打印流:PrintWriter。打印流提供了非常方便的打印功能,

可以打印任何類型的數據信息,例如:小數,整數,字符串。

回顧:

之前打印信息需要使用OutputStream但是這樣,所有數據輸出會非常麻煩,String-->byte[],打印流中可以方便進行輸出,

PrintStream類中常用方法:

技術分享

在這個類中定義了很多print()和println()方法,System.out.print()方法可以打印任何數據類型。

技術分享

構造方法:

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

此構造方法接收OutputStream的子類,

打印流好處:

通過定義的構造方法可以發現,有一個構造方法可以直接接收OutputStream類的實例,與OutputStream相比起來,PrintStream可以更方便的輸出數據,

相當於把OutputStream類重新包裝了一下,使之輸出更方便。

技術分享

實例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() ;
    }
};

JAVA的IO流:打印流