【发布时间】:2014-11-20 00:36:20
【问题描述】:
我正在尝试从我的 Scala 项目中读取一些文件,如果我使用:java.io.File(".").getCanonicalPath() 我发现我的当前目录离它们很远(正是我安装 Scala Eclipse 的位置)。那么如何将当前目录更改为我的项目的根目录,或者获取我的项目的路径?我真的不想拥有输入文件的绝对路径。
val PATH = raw"E:\lang\scala\progfun\src\examples\"
def printFileContents(filename: String) {
try {
println("\n" + PATH + filename)
io.Source.fromFile(PATH + filename).getLines.foreach(println)
} catch {
case _:Throwable => println("filename " + filename + " not found")
}
}
val filenames = List("random.txt", "a.txt", "b.txt", "c.txt")
filenames foreach printFileContents
【问题讨论】:
-
os-lib 是使用 Scala 管理路径和读取文件 as described here 的最佳现代解决方案。 Java 文件系统库很混乱,既然存在这个很好的替代方案,就应该尽可能避免使用。
标签: eclipse file scala io path