首页 > 解决方案 > Java 系统独立的根目录路径

问题描述

在 Windows 系统中,我的路径是这样的:

C:/example/

在 Linux 系统中,我的路径是这样的:

/example/

是否有一些实用功能可以在两个系统中使用单个字符串?

标签: java

解决方案


Windows 将接受正斜杠作为目录分隔符,并添加当前驱动器,默认为系统驱动器,通常为C:. 所以路径/example/通常等同C:\example\于 Windows 并且是跨平台的。

但是,通常,完整绝对路径的基础在两个平台上会有所不同,因此您不能像这样硬编码绝对路径。您通常会以某种方式提出路径的基础,从而产生平台独有的东西,然后您将使用 Unix 风格的相对路径来指示从那里开始的遍历。这方面的一个例子是当前用户的主目录。如果您知道该data目录存在于当前用户的家中,那么您可以使用这个跨平台代码:

字符串路径 = System.getProperty("user.home") + "/data"

还有其他方法可以获取您将添加 Unix 样式相对路径的基本路径。基本路径通常来自配置文件或一些 Java 标准库调用,类似于getProperty()上面的使用。和上面的例子一样,通常会在该基本路径中添加一个 Unix 风格的相对路径,以指定您感兴趣的目录或文件的位置。


推荐阅读