返回信息流PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter
(socket.getOutputStream())),true);
创建了PrintWriter 之后使用:
out.println(message);
不会有输出,但是加上:
out.write(message);
才会有输出,这是为什么呢?
这是一条镜像帖。来源:北邮人论坛 / java / #14992同步于 2010/6/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[请教]疑惑PrintWriter问题
blove
2010/6/26镜像同步13 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
因为println之后还得调用flush才会真正输出。这正是BufferedWriter的功效。
【 在 blove (大雨) 的大作中提到: 】
: PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter
: (socket.getOutputStream())),true);
: 创建了PrintWriter 之后使用:
: out.println(message);
: 不会有输出,但是加上:
: out.write(message);
: 才会有输出,这是为什么呢?
但是我new PrintWriter的时候,outoflag置为true了,和这个没关系是么?我试过了,置为false什么也收不到。
【 在 DestinyOwner 的大作中提到: 】
: 因为println之后还得调用flush才会真正输出。这正是BufferedWriter的功效。
: 【 在 blove (大雨) 的大作中提到: 】
: : PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter
: ...................
其实我是想一句一句的反复向socket输出文字,
out.println(message);
out.flush();
out.println(message);
out.flush();
结果只出现一句
【 在 DestinyOwner 的大作中提到: 】
: 因为println之后还得调用flush才会真正输出。这正是BufferedWriter的功效。
: 【 在 blove (大雨) 的大作中提到: 】
: : PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter
: ...................
什么flag?
我是说BufferedWriterer有这个功能,不是PrintWriter
【 在 blove (大雨) 的大作中提到: 】
: 但是我new PrintWriter的时候,outoflag置为true了,和这个没关系是么?我试过了,置为false什么也收不到。
flush之需要最后调用一下就成。
【 在 blove (大雨) 的大作中提到: 】
: 其实我是想一句一句的反复向socket输出文字,
: out.println(message);
: out.flush();
: ...................
public PrintWriter (Writer wr, boolean autoflush)
autoflush indicates whether to flush contents upon encountering a newline sequence
autoflush 不是使println自动flush么?
【 在 DestinyOwner 的大作中提到: 】
: 什么flag?
: 我是说BufferedWriterer有这个功能,不是PrintWriter
: 【 在 blove (大雨) 的大作中提到: 】
: ...................
但是你外边给它套了个“BufferedWriter”,这个不能无视啊
【 在 blove (大雨) 的大作中提到: 】
: public PrintWriter (Writer wr, boolean autoflush)
: autoflush indicates whether to flush contents upon encountering a newline sequence
: autoflush 不是使println自动flush么?
: ...................
哦,是里边,从来不见这么套的,PrinterWriter没见过在最外面的。
【 在 DestinyOwner (爱荷散人|奋斗ing) 的大作中提到: 】
: 但是你外边给它套了个“BufferedWriter”,这个不能无视啊
是啊。。。也没找到很好的例子不知道我看的例子科学性。
不过我想实现的很简单:
1 服务器监听所有客户端socket发来的信息,并打印到终端(我猜想需要多线程打印)
2 客户端可以随机发送n条信息通过socket给服务器,我只做一个客户端连接。
我目前没用多线程打印,结果服务器只收到一个消息监听并打印。不知道是不是多线程原因,还是客户端的flush原因,晕了。
【 在 DestinyOwner 的大作中提到: 】
: 哦,是里边,从来不见这么套的,PrinterWriter没见过在最外面的。
: 【 在 DestinyOwner (爱荷散人|奋斗ing) 的大作中提到: 】
: : 但是你外边给它套了个“BufferedWriter”,这个不能无视啊
: ...................