How do I rename a file in Scala?

2020-03-21 05:40发布

问题:

I want to rename a file in the system by Scala code. The equivalent of what can be done by bash like,

mv old_file_name new_file_name

I am not asking about renaming a scala source code file, but a file residing in the system.

回答1:

Consider

import java.io.File
import util.Try

def mv(oldName: String, newName: String) = 
  Try(new File(oldName).renameTo(new File(newName))).getOrElse(false)

and use it with

mv("oldname", "newname")

Note mv returns true on successful renaming, false otherwise. Note also that Try will catch possible IO exceptions.



回答2:

See renameTo of java.io.File. In your case this would be

new File("old_file_name").renameTo(new File("new_file_name"))


回答3:

Use Guava:

Files.move(new File("<path from>"), new File("<path to>"))


标签: scala