File.RenameTo()依赖于平台,并且依赖于要满足的几个条件才能成功重命名文件,更好的选择是使用
Path source = currentFile.toPath();
try {
Files.move(source, source.resolveSibling(formattedName));
} catch (IOException e) {
e.printStackTrace();
}
阅读更多here.
来自javadocs:
Many aspects of the behavior of this method are inherently
platform-dependent: The rename operation might not be able to move a
file from one filesystem to another, it might not be atomic, and it
might not succeed if a file with the destination abstract pathname
already exists. The return value should always be checked to make sure
that the rename operation was successful.
请注意,Files类定义了以独立于平台的方式移动或重命名文件的移动方法.