即使指定了绝对路径,Scala io.Source.fromfile也找不到我的文件

red*_*e47 3 io file-io scala

我正在尝试使用Scala访问文件io.Source.fromfile.
我已指定完整路径,但我仍然收到no such directory or file错误.

这是我的代码的一般版本:

val lines = io.Source.fromFile("~/top/next/source/resources/desiredFile.txt").getLines()
Run Code Online (Sandbox Code Playgroud)

我正在运行Ubuntu,如果这有任何区别.

gro*_*ter 7

这可能是因为您正在使用波形符号,请使用完整的绝对路径.如果要避免对主目录进行硬编码,可以从环境变量中获取:

val home = System.getProperty("user.home")
val s = Source.fromFile(s"${home}/.....").getLines() 
Run Code Online (Sandbox Code Playgroud)


red*_*e47 5

编译器假设它应该从我已经所在的项目文件夹中启动,因此当我指定该文件夹上方的目录时,它会尝试将它们全部查找为我的根项目文件夹的子目录。
这显然会导致错误。

我现在有:

val lines = io.Source.fromFile("source/resources/desiredFile.txt")
Run Code Online (Sandbox Code Playgroud)

哪个工作正常