Function std::fs::copy 1.0.0[−][src]
pub fn copy<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<u64>
Expand description
将一个文件的内容复制到另一个文件。此函数还将复制原始文件的权限位到目标文件。
该函数将覆盖 to 的内容。
请注意,如果 from 和 to 都指向同一个文件,则此操作可能会截断该文件。
成功后,将返回复制的字节总数,该总数等于 metadata 报告的 to 文件的长度。
如果您想将一个文件的内容复制到另一个文件,并且正在使用 File,请参见 io::copy() 函数。
平台特定的行为
此函数当前与 Unix 中的 open 函数相对应,其中 from 的 O_RDONLY 和 to 的 O_WRONLY,O_CREAT 和 O_TRUNC。
O_CLOEXEC 为返回的文件描述符设置。
在 Windows 上,此函数当前对应于 CopyFileEx。
复制备用 NTFS 流,但此函数仅返回主流的大小。
在 MacOS 上,此函数对应于 fclonefileat 和 fcopyfile。
注意,这个 may change in the future。
Errors
在以下情况下,此函数将返回错误,但不仅限于这些情况:
from既不是普通文件,也不是普通文件的符号链接。from不存在。- 当前进程没有读取
from或写入to的权限。
Examples
use std::fs; fn main() -> std::io::Result<()> { fs::copy("foo.txt", "bar.txt")?; // 将 foo.txt 复制到 bar.txt Ok(()) }Run