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 }