我的应用将图片保存到文件夹中。同时,另一个软件监视此文件夹并打印粘贴的图像。
我遇到的问题是打印应用程序可以在打印机上发送一半渲染图像,或者根本不对保存的图像作出反应。
我使用javax.imageio.ImageIO.write(RenderedImage im, String formatName, File output)
将BufferedImage
保存为png
格式。
如果需要锁定,请提供带有显式锁定的代码示例。如果不解释原因。
我已在Windows
,JRE 1.8
答案 0 :(得分:1)
基本上,您应该将图像写入临时文件,然后将其重命名为最终文件名。这样,文件就会在其他应用程序意识到之前完全写入。
答案 1 :(得分:0)
您可能希望实现某种锁定机制,即文件只有在完全写入时才会读取,或者根本不读取。