繁体   English   中英

ImageIO.write缓存了吗?

[英]Is ImageIO.write buffered?

我应该写

BufferedOutputStream os = new BufferedOutputStream(new FileOutputStream(file));
ImageIO.write(im, "JPEG", os);

代替

ImageIO.write(im, "JPEG", file);

即默认是否缓冲ImageIO文件操作?

谢谢!

如果传入File ,底层实现将直接写入RandomAccessFile (以"rw"模式创建),因此不进行缓冲。 具体来说, FileImageOutputStream将用作ImageOutputStream

我认为这取决于IIORegistry的具体实施,我认为它取决于系统。

我希望它能被缓冲,但我想你可以选择第一个完全确定的选项。

您将需要使用BufferedOutputStream(如前面提到的1中所述)。

默认情况下,ImageIo.write不缓冲。 这取决于你在论证中传递给它的东西。 如果File对象被传递,它将不会被缓冲写入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM