首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Java中获取当前工作目录?

如何在Java中获取当前工作目录?
EN

Stack Overflow用户
提问于 2011-02-02 13:24:07
回答 26查看 1.6M关注 0票数 1.2K

我想使用Java访问我当前的工作目录。

我的代码:

代码语言:javascript
复制
 String currentPath = new java.io.File(".").getCanonicalPath();
 System.out.println("Current dir:" + currentPath);

 String currentDir = System.getProperty("user.dir");
 System.out.println("Current dir using System:" + currentDir);

输出:

代码语言:javascript
复制
Current dir: C:\WINDOWS\system32
Current dir using System: C:\WINDOWS\system32

我的输出不正确,因为C盘不是我的当前目录。

如何获取当前目录?

EN

回答 26

Stack Overflow用户

发布于 2011-09-30 05:12:34

代码:

代码语言:javascript
复制
public class JavaApplication {
  public static void main(String[] args) {
    System.out.println("Working Directory = " + System.getProperty("user.dir"));
  }
}

这将打印当前目录的绝对路径,您的应用程序是从该目录初始化的。

说明:

documentation

java.io包使用当前用户目录解析相对路径名。当前目录表示为系统属性,即user.dir,并且是从中调用JVM的目录。

票数 1.3K
EN

Stack Overflow用户

发布于 2013-04-12 01:10:26

请参阅:Path Operations (The Java™ Tutorials > Essential Classes > Basic I/O)

使用java.nio.file.Pathjava.nio.file.Paths,您可以执行以下操作来显示您认为的当前路径。这适用于7及更高版本,并使用NIO。

代码语言:javascript
复制
Path currentRelativePath = Paths.get("");
String s = currentRelativePath.toAbsolutePath().toString();
System.out.println("Current absolute path is: " + s);

这将输出以下内容:

代码语言:javascript
复制
Current absolute path is: /Users/george/NetBeansProjects/Tutorials

在我的例子中,这就是我运行类的地方。

以相对方式构建路径,通过不使用前导分隔符来指示您正在构建绝对路径,将使用此相对路径作为起点。

票数 454
EN

Stack Overflow用户

发布于 2014-03-12 20:03:01

以下代码适用于Java7及更高版本(有关文档,请参阅here )。

代码语言:javascript
复制
import java.nio.file.Paths;

Paths.get(".").toAbsolutePath().normalize().toString();
票数 250
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4871051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档