[英]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.