在Eclipse中的项目中读取.txt文件

时间:2016-04-01 14:06:14

标签: java eclipse

我明白这个问题已被多次询问,但尽管遵循了这些链接中的所有建议,我仍然最终得到文件未找到错误。

这些是我已经检查过的链接。

Where do I put the txt file that I want to read in Java?

How to really read text file from classpath in Java

因此,请不要让触发开心,将其标记为重复。

对于其中一个链接似乎可以互换地使用ClassPath和BuildPath这两个词,它们是同一个东西,因为在我的IDE中我似乎无法找到任何与ClassPath相关的东西,它只是BuildPath。

所以这是我的目录结构。

enter image description here

调用者类需要文件

enter image description here

我已经尝试了链接中的所有内容,但仍然无法读取文件。

读取文件的代码在这里

String path = "DataSource/data1.txt";
        String jsonData = null;

        try {

            jsonData = Reader.readFile(path);
        } catch (Exception e) {
            e.printStackTrace();
        }

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:2)

尝试

  

String path =“src / main / java / DataSource / data1.txt”;

了解eclipe中的执行点位于项目根目录。

但是你可能想在你的jar上打包这样的资源。如果是这样,你需要使用类似的东西:

  

jsonData = Reader.readFile(Caller.class.getResourceAsStream(“DataSource / data1.txt”“));

最后,将.txt文件移动到'src / main / resources',因为这是一个很好的做法。

答案 1 :(得分:0)

术语 ClassPath 与Java代码编译和执行相关,术语 BuildPath 与IDE(即Eclipse)相关。 IDE在构建和运行应用程序/程序时,会自动将添加到BuildPath的库添加到ClassPath。

“调用者类需要文件”,然后您可以以两种方式提供文件路径

  1. 提供绝对文件路径。
  2. 提供您正在执行的相对路径,但要确保它相对于您运行程序的当前位置。如果IDE相对路径应该来自Project-Directory。