如何获取Scala中的当前(工作)目录?

时间:2018-04-16 14:32:15

标签: scala file working-directory

如何在Scala中获取正在执行的程序的当前目录(工作目录)?

6 个答案:

答案 0 :(得分:6)

使用java.nio

import java.nio.file.Paths
println(Paths.get(".").toAbsolutePath)

备注scala.reflect.io.File:我认为没有任何理由可以查看scala.reflect个软件包以完成这些平凡的任务。获取当前工作目录通常与Scala的反射功能无关。以下是不使用scala.reflect.io.File的更多理由:link

答案 1 :(得分:2)

使用此:

IExternal

答案 2 :(得分:2)

我使用new java.io.File(".").getAbsolutePath,但所有其他答案也有效。通过常规Java API使用Scala特定的API

,您实际上并没有获得任何好处

答案 3 :(得分:2)

使用此 System.getProperty("user.dir")

答案 4 :(得分:1)

import scala.sys.process._
val cwd = "pwd".!!  //*nix OS

答案 5 :(得分:0)

os-lib使获取当前工作目录和执行其他文件系统操作变得容易。获取当前目录的方法如下:

os.pwd

os.pwd构建其他路径对象很容易,例如:

os.pwd/"src"/"test"/"resources"/"people.csv"

与其他选项不同,该语法直观易记。有关如何使用os-lib项目的更多详细信息,请参见here