黑马程序员技术交流社区
标题:
PrintWrite an PrintStream
[打印本页]
作者:
HeiMa-黄倲江
时间:
2012-11-5 01:39
标题:
PrintWrite an PrintStream
package cn.max;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
public class PrintDome {
/**
* 字节打印流 构造函数可以接受的对象
* PrintSteam
* 1.File对象 file
* 2.字符串路径 String
* 3.字节输出流OutputStream
*
*PrintWriter
*1.File对象 file
*2.字符串路径 String
*3.字节输出流OutputStream
*4.字符输出流Writer
*
* @param args
*/
public static void main(String[] args)throws IOException {
WriterDemo();
}
public static void WriterDemo() throws IOException{
//键盘录入
BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
//注意: 这里要是多加了个参数true的话 就不用 out.flush()这个方法 但是前提必须得是println 换行才可以刷新
//需求1.我要把键盘信息录入到文件里边呢
//PrintWriter out = new PrintWriter(System.out,true);
//PrintWriter out = new PrintWriter("a.txt"); //刷新只对流而言的 是不能操作文件的.
//需求2: 那我向刷新呢怎么办啊! 简单阿!用FileWriter封装下不就完了吗
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("a.txt")),true);
//需求3:想提高效率怎么办啊. 直接new 一个BufferedWrite就得了呗
String line = null;
while((line=bufr.readLine()) != null){
if("over".equals(line)){
break;
}
out.println(line.toUpperCase());
//刷新
//不刷新时因为调用的函数 多加了个参数 true已经自动去执行刷新了
// out.flush();
}
bufr.close();
out.close();
}
}
这两个刷新, 在效率上有什么不一样吗?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2