Java基础-IO流对象之打印流(PrintStream与PrintWriter)

              Java基础-IO流对象之打印流(PrintStream与PrintWriter)

                                        作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.打印流的特性

  打印对象有两个,即字节打印流(PrintStream)和字符打印例会(PrintWriter)。两个打印流的方法完全一致,在构造方法中指定打印流的输出目的端,打印流有以下特点:

    1>.此流不负责数据源,只负责数据目的;

    2>.为其它输出流添加功能;

    3>.永远不会抛出IOException,可能会抛出其它异常;

二.打印流输出的目的是File对象

  你如果想要文件原样输入一些数据,那么打印流就很对你的菜哟!我们看以下案例:

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.note6; import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter; public class PrintWriterDemo {
public static void main(String[] args) throws IOException {
File file = new File("yinzhengjie.txt");
if(!file.exists()) {
file.createNewFile();
}
//创建字符输出流,封装文件
PrintWriter pw = new PrintWriter(file);
//向文件中写入int数据类型
pw.println(100);
//向文件中写入double数据类型
pw.println(3.14);
//向文件中写入boolean数据类型
pw.println(true);
//释放资源
pw.close();
}
}

三.打印流复制文本文件

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.note6; import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter; public class PrintWriterDemo {
public static void main(String[] args) throws IOException {
//创建数据源对象
BufferedReader bfr = new BufferedReader(new FileReader("yinzhengjie.properties"));
//创建需要打印的目的对象
FileWriter fw = new FileWriter("yinzhengjie.backup");
//开启自动刷新功能,如果想关闭自动刷新就改为false,或者不穿该参数默认也是关闭自动刷新状态
PrintWriter pw = new PrintWriter(fw,true);
//开始拷贝
String line = null;
while(((line = bfr.readLine() )!= null )) {
pw.print(line);
pw.println();
}
//释放资源
pw.close();
bfr.close(); }
}
上一篇:BZOJ 1706


下一篇:POJ1183 公式推导