黑马程序员技术交流社区
标题:
PrintWriter可以打印的目的地有什么
[打印本页]
作者:
孙天
时间:
2012-3-25 22:57
标题:
PrintWriter可以打印的目的地有什么
用FileWriter不好吗
作者:
盛祖华
时间:
2012-3-25 23:21
FileWriter提供的write()方法中的参数有限制,只能输出一些指定的类型。
而PrintWriter的write()可以提供print()方法,此方法里面的参数可以是各种类型(输出时自动转换),它们是字符串(String)、字符数组(char[])、字符(char)、整数(int)、长整数(long)、浮点数(float)、双精度浮点数(double)、布尔值(boolean),更加方便程序的书写。
写文件最佳组合
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(filename)))
PrintWriter 提供print系方法
BufferedWriter 提供缓冲,用以加速
FileWriter 用于写文件
PrintWriter以字符为单位,支持汉字,
OutputStreamWriter以字节为单位,不支持汉字,
PrintWriter和BufferedWriter都是继承java.io.Writer,所以很多功能都一样。不过PrintWriter提供println()方法可以写不同平台的换行符,而BufferedWriter可以任意设定缓冲大小。
OutputStream可以直接传给PrintWriter(BufferedWriter不能接收),如:
PrintWriter out
= new PrintWriter(new BufferedOutputStream(new FileOutputStream("foo.out")));
或者用OutputStreamWriter来将OutputStream转化为Writier.这时就可以用BufferedWriter了。
API documents中都写的很清楚了。
作者:
anyanyhai
时间:
2012-3-25 23:25
PrintWriter呢,叫格式化打印输出流,
就是向指向该目标文本文件的输出流中打印你想打印的东西,在将你要打印的东西打印完了过后,
你再调用这个类的.flush()方法就可以把输出流中的东西刷进目标文本文件中
不同点:
就是当前者的自动清空缓冲区的功能被使能时(构造函数中autoFlush置为true),仅当println()方法被调用时才自动清缓冲区,而不是像PrintStream一样遇到一个换行符就清缓冲。
作者:
1002865186
时间:
2012-3-25 23:26
printwriter 提供了两个非常好用的写 方法 print() 和 println() print() 往流中写的是不带换行的数据(字符), 另一个是呆换行的,比较好用 谁用谁知道啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2