Java fileinputstream的文件位置

Java fileinputstream的文件位置,java,fileinputstream,Java,Fileinputstream,我正在做一个Android项目,我有一个.bin格式的文件,我把它放在Java项目的根目录下(不在任何文件夹中)。我尝试使用FileInputStream检索它,如下所示: InputStream file = new FileInputStream("filename.bin"); 但它无法读取文件 我应该把垃圾箱文件放在哪里?或者我还有什么需要注意的吗 [编辑]错误: Error occurred during initialization of VM java/lang/NoClassD

我正在做一个Android项目,我有一个.bin格式的文件,我把它放在Java项目的根目录下(不在任何文件夹中)。我尝试使用FileInputStream检索它,如下所示:

InputStream file = new FileInputStream("filename.bin");
但它无法读取文件

我应该把垃圾箱文件放在哪里?或者我还有什么需要注意的吗

[编辑]错误:

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/ref/FinalReference
[编辑]解决方案: 从这里找到解决方案>>


上述语法表示文件
filename.bin
与代码位于同一文件夹中。 尝试提供文件的绝对路径,或将文件放入
src
文件夹并使用

InputStream file = new FileInputStream("/filename.bin");

要获取当前工作目录:
System.getProperty(“user.dir”)

FileInputStream还将文件接收到其构造函数之一

你能行

File f = new File("filename.bin")
if (f.isFile()) {
    InputStream is = new FileInputStream(f);
} 
else {
    //cope with missing file
}
这样,如果文件消失或不在您认为的位置,您将不会得到FileNotFoundException


@Srigan提出了一个很好的观点,即尝试/infront

在失败时是否会引发异常?错误如上所述。这和我的java安装有关吗?哇。是的。classpath或\有问题,您的整个java安装都被破坏了,但当我尝试cmd行“java”时,它仍然正常。不管怎样,我必须重新安装所有东西吗?我担心这会影响我在eclipse中的项目。我该怎么做呢?
File f = new File("filename.bin")
if (f.isFile()) {
    InputStream is = new FileInputStream(f);
} 
else {
    //cope with missing file
}