16.7打印流

對於數據的操作可以使用OutputStream類或者Writer類完成,但是這兩個輸出類有一定的侷限性。例如,OutputStream只允許輸出字節數據,writer只允許輸出字符數據和字符串數據。爲了簡化輸出的操作提供有兩個打印流操作類:字節打印流(PrintStream)、字符打印流(PrintWriter)
在這裏插入圖片描述
PrintWriter類的常用方法
在這裏插入圖片描述
範例:使用PrintWriter實現文件內容輸出

package com.lxh.sixteenchapter;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;

public class JavaIODemo423 {
       public static void main(String[] args) {
		File file=new File("E:"+File.separator+"File"+File.separator+"info.txt");
		if(!file.getParentFile().exists()) {
			file.getParentFile().mkdirs();
		}
		PrintWriter pu=null;
		try {
		    pu=new PrintWriter(new FileOutputStream(file));
			pu.println("姓名:唐三");   //輸出數據並換行
			pu.print("年齡:");        //輸出數據不換行
			pu.print(15);//輸出數據並換行
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}finally {
			pu.close();
		}
	}
}

執行結果
在這裏插入圖片描述

打印流支持多種數據類型,也可以方便地實現數據的換行處理
從JDK1.5開始打印流支持了格式化輸出的操作,可以利用printf()方法設置數據的佔位符(

  1. 字符串:%s
  2. 整數:%d
  3. 浮點數:%m.nf
  4. 字符:%c
    等)與具體的數值結合後進行內容輸出操作。
    範例:格式化輸出
package com.lxh.sixteenchapter;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;

public class JavaIODemo425 {
       public static void main(String[] args) {
    	File file=new File("E:"+File.separator+"File"+File.separator+"info.txt");
   		if(!file.getParentFile().exists()) {
   			file.getParentFile().mkdirs();
   		}
   		PrintWriter pu=null;
   		try {
			pu=new PrintWriter(new FileOutputStream(file));
			String name="小舞";
			int age=18;
			double salary=88823.6;
			pu.printf("姓名:%s、年齡:%d、薪水:%8.2f", name,age,salary);//格式化輸出
			
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}finally {
			pu.close();
		}
	}
}

執行結果
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章