我的日食项目:
MyJavaProject
|
|___src/main/java
| |
| |___myPackage
| |
| |___myJava.java
|
|___myFolder
| |
| |___myFile.txt
|
.
.
.
要从myJava代码中读取myFile.txt,我使用了路径/MyJavaProject/myFolder/myFile.txt
。此路径始终为我提供文件未找到的异常。这里有什么错误?
答案 0 :(得分:0)
通常在eclipse中启动Main类时,它会将当前目录设置为项目的根目录
你可以通过
查看System.out.println(System.getProperty("user.dir"))
因此您需要从项目的根目录开始的相对路径
答案 1 :(得分:0)
你可以这样读:
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("myFolder/myFile.txt")));
while(true)
{
String line = br.readLine();
if(line == null)
break;
else
{
System.out.println(line);
}
}
答案 2 :(得分:-1)
在Eclipse中,src/main/java/
中的所有java文件都被编译并复制到输出文件夹/bin or /target/classes
,因此当执行myJava.java
时,java类的工作目录为“bin / “或/target/classes
。从这些目录中,它将无法访问您的文件/MyJavaProject/myFolder/myFile.txt
。您的选择如下:
../myFolder/myFile.txt
)或../../myFolder/myFile.txt
myFolder
添加为src/main/java
的子文件夹,然后eclipse会将这些资源复制到您的/bin
或/target/classes
输出文件夹中,然后您可以使用相对路径myFolder/myFile.txt
src/main/resources/
文件夹,然后eclipse会以相同的方式将这些资源复制到你的输出文件夹。