我目前在我正在构建的 Java 应用程序中使用 ImageJ jar (ij.jar),并设法让一切正常工作。但是,当我执行该行时,有可能:
ImagePlus image = new ImagePlus(path);
(其中路径是用户指定的图像路径),图像可能不存在。ImageJ 库在访问方法之前不会抛出错误image
,此时,ImageJ 将打印到控制台There are no images open.
并终止程序。我相信 ImageJ 实际上是System.exit()
在打印该行时调用的,因为我的整个应用程序都终止了——包括 Deamon 线程。
有没有办法使用 ImageJ 来检查图像是否成功打开?或者我应该使用 Java 的 File 类检查文件是否存在?
编辑:
澄清一下,这是一个多线程应用程序,它可能会尝试同时打开和处理许多图像。ImageJ 类 ( IJ
) 具有打开图像的功能,但IJ
它是一个单例类,因此在IJ.openImage("string")
同时发生多个调用时会出现奇怪的行为。