我正在编写一个媒体转码服务器,需要在文件系统中移动文件。目前我面临的困境是,是否可以用其他更高效的方法替换Java的renameTo函数。我考虑使用exec("mv file1 file2"),但这只是我的最后选择。有没有人有类似的经验或可以帮助我找到解决方案?
renameTo
可能只是包装了一个系统调用。我认为使用文件的默认方法并不会有明显的性能损失,因为大多数JVM到操作系统的函数已经包装了本地调用。
唯一需要使用exec的情况是如果您想要以与程序不同的权限执行某些操作或者使用特殊工具来复制/移动文件。(例如,在涉及ntfs-junctions时使用smart-move)