当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust rename用法及代码示例


本文简要介绍rust语言中 Function std::fs::rename 的用法。

用法

pub fn rename<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<()>

将文件或目录重命名为新名称,如果 to 已存在,则替换原始文件。

如果新名称位于不同的挂载点,这将不起作用。

特定于平台的行为

此函数当前对应于 Unix 上的 rename 函数和 Windows 上带有 MOVEFILE_REPLACE_EXISTING 标志的 MoveFileEx 函数。

因此,双方的行为fromto存在不同。在 Unix 上,如果from是一个目录,to也必须是一个(空)目录。如果from不是目录,to也必须不是目录。相比之下,在 Windows 上,from可以是任何东西,但是to必须不是是一个目录。

请注意,这个may change in the future

错误

此函数会在以下情况下返回错误,但不仅限于这些情况:

  • from 不存在。
  • 用户没有查看内容的权限。
  • fromto 位于不同的文件系统上。

例子

use std::fs;

fn main() -> std::io::Result<()> {
    fs::rename("a.txt", "b.txt")?; // Rename a.txt to b.txt
    Ok(())
}

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::fs::rename。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。