我真的很想知道这段代码是做什么的:
scala> import java.nio.file._
import java.nio.file._
scala> Files.copy(Paths.get(""), Paths.get(""))
res0: java.nio.file.Path =
不应抛出NoSuchFileException
?
阅读JavaDoc显示:
默认情况下,如果目标文件已存在或是a,则复制将失败 符号链接,除非源和目标是同一个文件,在 在不复制文件的情况下,该方法完成的情况。
但我不确定这是否是真正的原因,因为Files.copy(Paths.get("a"), Paths.get("a"))
按预期失败。
答案 0 :(得分:5)
您可能想要检查http://download.oracle.com/javase/7/docs/api/java/nio/file/Paths.html当提供空字符串(它生成一个空路径)时,paths.get会执行什么操作;有关空路径的含义的详细信息,请查看http://download.oracle.com/javase/7/docs/api/java/nio/file/Path.html:
如果路径仅由一个路径组成,则路径被视为空路径 name元素为空。使用空路径访问文件是 相当于访问文件系统的默认目录。
因此,您的代码看起来像是一个有效的空路径,然后认为源和目标是相同的。