1 import java.io.FileWriter; 2 import java.io.IOException; 3 import java.io.PrintWriter; 4 5 /* 6 * 打印流: 7 * PrintStream 8 * PrintWriter 9 * 可以自動換行:println() 10 * 不能輸出字節,但可以輸出其他的任意類型 11 * 通過某些配置可以自動刷新(只有在println,print,format才可以使用) 12 * 是包裝流,不具備讀寫功能 13 * 可以把字節轉換成字符輸出 14 * 15 * 注意:只能輸入不能輸出 16 */ 17 public class PrintWriterDemo { 18 19 public static void main(String[] args) throws IOException { 20 //創建打印流 21 PrintWriter print = new PrintWriter("b.txt"); 22 23 //輸出數據 24 print.write("hello"); 25 print.write("world"); 26 print.write("!"); 27 28 //使用打印流特有方法輸出println() 29 //與平台無關 30 print.println("hello"); 31 print.println("world"); 32 print.println("!"); 33 34 //創建一個新的對象,此對對象具有自動刷新的功能,即在釋放資源之前就寫入數據 35 PrintWriter out = new PrintWriter(new FileWriter("c.txt"), true); 36 37 //輸出數據 38 out.println("hello"); 39 out.println("world"); 40 out.println("!"); 41 42 //釋放資源 43 print.close(); 44 out.close(); 45 46 } 47 }
應用實例:
1 import java.io.BufferedReader; 2 import java.io.FileReader; 3 import java.io.FileWriter; 4 import java.io.IOException; 5 import java.io.PrintWriter; 6
7 /*
8 * 使用PrintWriter復制文本文件 9 */
10 public class PrintWriterDemo2 { 11
12 public static void main(String[] args) throws IOException { 13 //創建數據源對象
14 FileReader is = new FileReader("b.txt"); 15 BufferedReader br = new BufferedReader(is); 16
17 //創建目標路徑對象
18 PrintWriter os = new PrintWriter(new FileWriter("d.txt"), true); 19
20 //復制文件
21 String line; //交換數的中介
22 while ((line = br.readLine()) != null) { 23 os.println(line); 24 } 25
26 //釋放資源
27 is.close(); 28 os.close(); 29 } 30 }