如何获得当前Java文件的路径

发布网友 发布时间:2022-04-23 15:01

我来回答

4个回答

好二三四 时间:2022-05-19 16:17

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

很多朋友都想知道java怎么获取当前目录?下面就一起来了解一下吧~

示例1:获取当前工作目录

public class CurrDirectory {

    public static void main(String[] args) {

        String path = System.getProperty("user.dir");
        
        System.out.println("Working Directory = " + path);

    }
}

运行该程序时,输出为:

Working Directory = C:UsersAdminDesktopcurrDir

在上面的程序中,使用System的getProperty()方法来获取user.dir程序的属性。这将包含Java项目的目录。

示例2:使用路径获取当前工作目录

import java.nio.file.Paths;public class CurrDirectory {

    public static void main(String[] args) {

        String path = Paths.get("").toAbsolutePath().toString();
        System.out.println("Working Directory = " + path);

    }
}

运行该程序时,输出为:

Working Directory = C:UsersAdminDesktopcurrDir

在上述程序中,使用Path的get()方法来获取程序的当前路径,这将返回到工作目录的相对路径。

然后使用toAbsolutePath()将相对路径更改为绝对路径。 由于它返回一个Path对象,因此需要使用toString()方法将其更改为字符串。

以上就是小编今天的分享,希望能够帮到大家。

热心网友 时间:2022-05-19 13:25

1、利用System.getProperty()函数获取当前路径:

System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径

2、使用File提供的函数获取当前路径:

File directory = new File("");//设定为当前文件夹

try{

System.out.println(directory.getCanonicalPath());//获取标准的路径

System.out.println(directory.getAbsolutePath());//获取绝对路径

}catch(Exceptin e){}

File.getCanonicalPath()和File.getAbsolutePath()大约只是对于new File(".")和new
File("..")两种路径有所区别。

# 对于getCanonicalPath()函数,“."就表示当前的文件夹,而”..“则表示当前文件夹的上一级文件夹

# 对于getAbsolutePath()函数,则不管”.”、“..”,返回当前的路径加上你在new File()时设定的路径

# 至于getPath()函数,得到的只是你在new File()时设定的路径


Java基础知识教程:

热心网友 时间:2022-05-19 14:43

绝对路径:
File f = new File(this.getClass().getResource("/").getPath()); 
System.out.println(f);

热心网友 时间:2022-05-19 16:17

public class Test {
public static void main(String[] args) {
String path = "Test.java";
File file = new File(path);
System.out.println(file.getAbsoluteFile());
}
}

-----
运行结果:
D:\workspaces\studyStruts2\Test.java
不加任何路径,就是指当前路径
望采纳追问谢谢,这个Test.java的路径上层路径呢?就是D:\workspaces\studyStruts2
怎么得到呢。

追答不好意思,昨天理解错了,看我今天写的这个,希望对你有帮助,忘采纳
public static void main(String[] args) throws IOException {File file1 = new File("");String projectPath = file1.getAbsolutePath();//获取项目目录System.out.println(file1.getAbsolutePath());//D:\workspaces\studyStruts2File file = new File(Test.class.getName()); String javapath = file.getPath();System.out.println(javapath);//org.xmh.demo.Test//所以获取java文件的本地绝对路径为:String path = projectPath+"\\src\\"+javapath.replace(".", "\\")+".java";System.out.println(path);//D:\workspaces\studyStruts2\src\org\xmh\demo\Test.java//这就是java文件的本地绝对路径啦}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com