如何清空ByteArrayOutputStream的缓冲区

zzwh_0 2006-12-12 09:52:48
此类实现了一个输出流,其中的数据被写入一个字节数组。缓冲区会随着数据的不断写入而自动增长,这样的话每次输出都会连以前的东西一起输出,请问如何将这个缓冲区清空。
...全文
1184 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzwh_0 2006-12-13
  • 打赏
  • 举报
回复
每次输出完我都会reset,还是那样阿。
关闭 ByteArrayOutputStream 无效。在关闭此流后且没有生成 IOException 时,可以调用此类中的该方法。

关闭无效是什么意思啊?
fool_leave 2006-12-13
  • 打赏
  • 举报
回复
reset一下不就可以了
zzwh_0 2006-12-13
  • 打赏
  • 举报
回复
fool_leave 2006-12-13
  • 打赏
  • 举报
回复
不知道你说的什么意思

reset会把ByteArrayOutputStream的count归零

你说的“连以前的东西一起输出”是什么意思

把代码贴出来,再详细描述一下
zzwh_0 2006-12-12
  • 打赏
  • 举报
回复
已经试过了,没用阿,照样输出。
88324877 2006-12-12
  • 打赏
  • 举报
回复
flush
public void flush()
throws IOException刷新此输出流并强制写出所有缓冲的输出字节。flush 的常规协定是:如果此输出流的实现已经缓冲了以前写入的任何字节,则调用此方法指示应将这些字节立即写入它们预期的目标。
如果此流的预期目标是由基础操作系统提供的一个抽象(如一个文件),则刷新此流只能保证将以前写入到流的字节传递给操作系统进行写入,但不保证能将这些字节实际写入到物理设备(如磁盘驱动器)。

OutputStream 的 flush 方法不执行任何操作。


指定者:
接口 Flushable 中的 flush
抛出:
IOException - 如果发生 I/O 错误。
从OutputStream继承过来的

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧