Java中的动态文件路径(编写和读取文本文件)

4

好的,我想要读取一个名为myfile.txt的文件,并将其保存在以下目录中:

home/myName/Documents/workspace/myProject/files myfile.txt

嗯...我想知道我应该传递什么参数到File(filePath)。我能否像".. \ myfile.txt"这样输入?我不想硬编码文件路径,因为如果我在另一台计算机上打开我的项目,它肯定会改变。如何确保文件路径尽可能动态?顺便说一下,我正在使用Java。

File teacherFile = new File(filePath);
4个回答

5

您可以使用相对路径引用文件,如../myfile.txt。这些路径的基础是Java进程在命令行中启动的目录。对于Eclipse而言,它是您的项目根目录或在 “运行”>“运行配置”>“参数” 下配置为工作目录的地方。如果您想查看Java内部的当前目录,请使用以下技巧:

File currentDir = new File("");
System.out.println(currentDir.getAbsolutePath());

3

您可以使用相对路径,它们默认相对于执行Java应用程序的当前目录。

但是,您也可以使用以下代码获取用户的主目录:

String userHome = System.getProperty("user.home");

1
你可以做到:
File currentDir = new File (".");
String basePath = currentDir.getCanonicalPath();

现在,basePath是您的应用程序文件夹的路径,请将确切的目录/文件名添加到其中,然后您就可以开始了。

0
你可以使用../myfile.txt。然而这个文件的位置会根据应用程序的工作目录而变化。最好确定项目的基本目录,并使用相对于该目录的路径。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接