【问题标题】:how to get a conf.txt path in eclipse如何在eclipse中获取conf.txt路径
【发布时间】:2013-06-22 20:51:15
【问题描述】:

我有一个 Eclipse 项目,在一个文件夹中有一个文本文件“conf.txt”。当我使用计算机上的路径时,我可以读取和写入文件。但我也必须在那里编写自己的文件夹,而不仅仅是工作区文件夹。 所以知道我想为其他人提交程序,但是我在程序中输入的路径将不起作用,因为程序在另一台计算机上运行。 我需要的是能够使用我的工作区中只有路径的文件。

如果我只是输入路径,它在工作区中,它将不起作用。

这就是我的类文件的样子。

public class FileUtil {

public String readTextFile(String fileName) {

      String returnValue = "";
      FileReader file = null;

      try {
        file = new FileReader(fileName);
        BufferedReader reader = new BufferedReader(file);
        String line = "";
        while ((line = reader.readLine()) != null) {
          returnValue += line + "\n";
        }
        reader.close();
      } catch (Exception e) {
          throw new RuntimeException(e);
      } finally {
        if (file != null) {
          try {
            file.close();
          } catch (IOException e) {
            // Ignore issues during closing 
          }
        }
      }
      return returnValue;
    }

public void writeTextFile(String fileName, String s) throws IOException {

    BufferedWriter output = new BufferedWriter(new FileWriter(fileName));
    try {
        output.write(s);
    }
      finally {
        output.close();
      }
  }

}

我希望有人知道该怎么做。

谢谢!

【问题讨论】:

  • 如果我对您的理解正确,您只想使用相对路径而不是完全限定的绝对路径?例如。 ./resources/conf.txt 而不是 C://Files/Resources/conf.txt
  • 什么样的项目? Java 项目、动态 Web 项目等...
  • 是的,我就是这个意思。那么我在 conf.txt 前面放什么?
  • Java 项目,抱歉,忘了说。
  • @Annika 您的conf.txt 文件在哪里?我的意思是它在您的项目根文件夹中还是在项目文件夹之外?可能会显示一些带有文件位置的代码 sn-p 将有助于解决您的问题。

标签: java eclipse path text-files workspace


【解决方案1】:

我不确定,但我附上了带有一点解释的屏幕截图。如果您有任何问题,请告诉我。

您的项目是根文件夹,图像是资源文件夹,您可以使用相对路径访问文件。

// looks for file in root --> file.txt
scan = new Scanner((new File("file.txt")));

// looks for file in given relative path i.e. root--> images--> file.txt
scan = new Scanner((new File("images/file.txt"))); 

【讨论】:

    【解决方案2】:

    如果您希望通过相对路径访问配置文件,则无需在其前面添加任何内容。假设您使用的是 bufferedReader,或者类似的东西,它看起来很简单:br = new BufferedReader(new FileReader("config.txt"));

    这将导致搜索运行时目录,这样您就不必完全限定文件的路径。话虽如此,您必须确保您的 config.txt 与可执行文件位于同一目录中。

    【讨论】:

    • 我确实有那行。我在问题中发布了我的类是什么样的,它具有读取/写入文件的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-27
    • 2014-07-04
    • 1970-01-01
    • 1970-01-01
    • 2012-07-11
    相关资源
    最近更新 更多