rename 抽象方法

Future<File> rename(
  1. String newPath
)
override

重命名此文件。

返回一个 Future<File>,当重命名完成后,将返回一个指向重命名文件的 File 对象。

如果 newPath 是一个相对路径,它将相对于当前工作目录(Directory.current)解析。这意味着仅更改文件名,但保持其在原始目录中,需要创建一个新的完整路径,并在末尾添加新的名称。示例

Future<File> changeFileNameOnly(File file, String newFileName) {
  var path = file.path;
  var lastSeparator = path.lastIndexOf(Platform.pathSeparator);
  var newPath = path.substring(0, lastSeparator + 1) + newFileName;
  return file.rename(newPath);
}

在某些平台上,重命名操作无法在不同文件系统之间移动文件。如果这种情况发生,请先 复制 文件到新位置,然后删除原始文件。

如果 newPath 指定了一个现有的文件或链接,该实体将被首先删除。如果 newPath 指定了一个现有的目录,操作将失败,并将使用 FileSystemException 完成未来。

实现

Future<File> rename(String newPath);