黑马程序员技术交流社区

标题: PrintWriter 问题 [打印本页]

作者: 盛亚昆    时间: 2012-3-28 08:38
标题: PrintWriter 问题
PrintWriter out=new PrintWriter(s.getOutPutStream(),true);这句话,怎么看不懂啊,高手指点,字符流怎么接受字节流了啊
作者: 鲍亚坤    时间: 2012-3-28 10:07
这应该是socket通信程序中的一个语句。其中的s应该是一个socket对象。s.getOutputStream()就是返回一个服务器与客户端的输出流,true是对PrintWriter pw 而言,就是强行把缓冲区的数据输出。s.getOutputStream()返回的是一个节点流,在它上面又套上了一个处理流PrintWriter ,便于输出数据。
作者: yangshang1    时间: 2012-3-28 10:09
public PrintWriter(OutputStream out,
                   boolean autoFlush)通过现有的 OutputStream 创建新的 PrintWriter。此便捷构造方法创建必要的中间 OutputStreamWriter,后者使用默认字符编码将字符转换为字节。

参数:
out - 输出流
autoFlush - boolean 变量;如果为 true,则 println、printf 或 format 方法将刷新输出缓冲区
另请参见:
OutputStreamWriter.OutputStreamWriter(java.io.OutputStream)

作者: dangfei    时间: 2012-3-28 10:19
PrintWriter 也是writer的子类,此类有其特殊之处,它是向文本输出流打印对象的格式化表示形式,实现了 PrintStream 中的所有 print 方法。
它的构造函数有很多,参数可以是字节输出流也可以是字符输出流,甚至是文件或者字符串。
作者: 抓哇    时间: 2012-3-28 10:50
public class PrintWriterextends Writer向文本输出流打印对象的格式化表示形式。此类实现在 PrintStream 中的所有 print 方法。它不包含用于写入原始字节的方法,对于这些字节,程序应该使用未编码的字节流进行写入。

与 PrintStream 类不同,如果启用了自动刷新,则只有在调用 println、printf 或 format 的其中一个方法时才可能完成此操作,而不是每当正好输出换行符时才完成。这些方法使用平台自有的行分隔符概念,而不是换行符。


作者: 盛亚昆    时间: 2012-3-29 10:03
谢谢指点




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2