我想知道是否有人知道为什么我java.io.FileNotFoundException
在尝试查找我知道目录中存在的文件时可能会得到一个。
我认为以下与它有关,请让我知道我是否正确或是否还有其他原因:
- 我将我的 JVM 从 1.7 降级到 1.6
- 文件名包含两个问号,所以文件名为
filename_?)?.data
当我使用 JVM 1.7 时,该程序能够找到该文件并将其打开。但是,在降级到 1.6 之后,它似乎找不到这个特定的文件。所以我在想JVM 1.6 可能无法读取其中带有问号的文件。
此外,我进行了两次/三次检查,并且该文件确实存在于我的程序正在查找的目录中(它也能够在其中找到其他文件)。
下面是我的代码:
public Object readFromFile(String fileName) {
// Check for null
if (fileName == null || fileName.equals("")) return null;
Object obj = null;
ObjectInputStream input = null;
// Open file into (input)
try {
input = new ObjectInputStream(new FileInputStream(fileName + ".data"));
} catch (IOException e) {
e.printStackTrace();
}
// Read content of file into (obj)
try {
obj = input.readObject();
input.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return obj;
}