我有一个javafx应用程序,它允许选择一个图像并显示它,或者允许您选择一个文件夹,读取里面的图像并显示它们。
无论哪种情况,它在Windows上都可以正常工作,但在macOS上运行时,它都不工作,并抛出
FileNotFoundException
.
以下是阅读代码:
String path = Paths.get(pathToFile).toUri().toString()
那条线给了我路`file:///Users/userName/Downloads/untitled%20folder/image.png`但随后异常显示“file:/Users/username/Downloads/untitled%20folder/image.png(没有这样的文件或目录)”。我试图从文件夹中删除空间,授予0777所有文件的权限。它就是读不出来。
我想补充一点,文件路径是从javaFX文件选择器获得的,它不是手动放置的。
编辑
完整的代码大致如下:
String path = Paths.get(loadedFilePath).toUri().toString();
File file = new File(path);
System.out.println(file.exists());
com.drew.metadata.Metadata metadata = ImageMetadataReader.readMetadata(new File(path));
在中引发异常
readMetadata()
方法,但已经是
file.exists()
retuurns false