How to check if path or file exist in Scala

2020-02-05 00:53发布

问题:

How do I check if a path / file exists in Scala similar to Python ? An example below:

os.path.exists("/home")
Out[4]: True

回答1:

Since Java 7 the better way would be

scala> import java.nio.file.{Paths, Files}
import java.nio.file.{Paths, Files}

scala> Files.exists(Paths.get("/tmp"))
res0: Boolean = true


回答2:

Well, sorry I found the answer to my own question:

scala> new java.io.File("/tmp").exists
res0: Boolean = true


回答3:

It is an old question, but I still need it needs some update. You should use isFile or isRegularFile instead of exists since exists don´t take in account if is a File or a Directory and can mislead the application in case there is a directory with the same name.

Using java.io

new java.io.File("/tmp/sample.txt").isFile

Using java.nio

java.nio.file.Files.isRegularFile(java.nio.file.Paths.get("/tmp/sample.txt"))


回答4:

scala.reflect.io.File("/tmp/sample.txt").exists

works as well.



标签: scala