pub fn copy<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<u64>
Copies the contents of one file to another. This function will also copy the permission bits of the original file to the destination file.
This function will overwrite the contents of to
.
Note that if from
and to
both point to the same file, then the file will likely get truncated by this operation.
On success, the total number of bytes copied is returned.
This function currently corresponds to the open
function in Unix with O_RDONLY
for from
and O_WRONLY
, O_CREAT
, and O_TRUNC
for to
. O_CLOEXEC
is set for returned file descriptors. On Windows, this function currently corresponds to CopyFileEx
. Note that, this may change in the future.
This function will return an error in the following situations, but is not limited to just these cases:
from
path is not a file.from
file does not exist.from
or write to
.use std::fs; fs::copy("foo.txt", "bar.txt")?; // Copy foo.txt to bar.txt
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/fs/fn.copy.html