本文简要介绍rust语言中 Function std::fs::copy
的用法。
用法
pub fn copy<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<u64>
将一个文件的内容复制到另一个文件。此函数还将原始文件的权限位复制到目标文件。
该函数将覆盖的内容to
.
请注意,如果 from
和 to
都指向同一个文件,则该文件可能会被此操作截断。
成功后,将返回复制的总字节数,它等于 metadata
报告的 to
文件的长度。
如果您想将一个文件的内容复制到另一个文件并且您正在使用 File
s,请参阅 io::copy()
函数。
特定于平台的行为
此函数当前对应于 Unix 中的 open
函数,其中 O_RDONLY
对应 from
,O_WRONLY
、 O_CREAT
和 O_TRUNC
对应 to
。 O_CLOEXEC
是为返回的文件说明符设置的。在 Windows 上,此函数当前对应于 CopyFileEx
。该函数会复制备用 NTFS 流,但仅返回主流的大小。在 MacOS 上,此函数对应于 fclonefileat
和 fcopyfile
。请注意,这个may change in the future。
错误
此函数会在以下情况下返回错误,但不仅限于这些情况:
from
既不是常规文件,也不是常规文件的符号链接。from
不存在。- 当前进程没有读取
from
或写入to
的权限。
例子
use std::fs;
fn main() -> std::io::Result<()> {
fs::copy("foo.txt", "bar.txt")?; // Copy foo.txt to bar.txt
Ok(())
}
相关用法
- Rust copy_nonoverlapping用法及代码示例
- Rust concat用法及代码示例
- Rust compile_error用法及代码示例
- Rust column用法及代码示例
- Rust compiler_fence用法及代码示例
- Rust concat_idents用法及代码示例
- Rust char.is_control用法及代码示例
- Rust char.is_alphanumeric用法及代码示例
- Rust char.len_utf16用法及代码示例
- Rust char.is_digit用法及代码示例
- Rust char.is_ascii_graphic用法及代码示例
- Rust char.decode_utf16用法及代码示例
- Rust char.is_uppercase用法及代码示例
- Rust catch_unwind用法及代码示例
- Rust char.to_ascii_lowercase用法及代码示例
- Rust char.is_ascii_uppercase用法及代码示例
- Rust canonicalize用法及代码示例
- Rust create_dir用法及代码示例
- Rust ctlz用法及代码示例
- Rust channel用法及代码示例
- Rust char.escape_unicode用法及代码示例
- Rust char.is_alphabetic用法及代码示例
- Rust char.is_ascii_control用法及代码示例
- Rust char.from_u32_unchecked用法及代码示例
- Rust char.is_ascii_alphabetic用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::fs::copy。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。