Expand description
This module includes additional methods for working with files.
One of the distinguishing features is receipt information about process work with files.
Example
ⓘ
use std::path::Path;
use std::{thread, time};
use std::sync::mpsc::{self, TryRecvError};
extern crate fs_extra;
use fs_extra::file::*;
use fs_extra::error::*;
fn example_copy() -> Result<()> {
let path_from = Path::new("./temp");
let path_to = path_from.join("out");
let test_file = (path_from.join("test_file.txt"), path_to.join("test_file.txt"));
fs_extra::dir::create_all(&path_from, true)?;
fs_extra::dir::create_all(&path_to, true)?;
write_all(&test_file.0, "test_data")?;
assert!(test_file.0.exists());
assert!(!test_file.1.exists());
let options = CopyOptions {
buffer_size: 1,
..Default::default()
}
let (tx, rx) = mpsc::channel();
thread::spawn(move || {
let handler = |process_info: TransitProcess| {
tx.send(process_info).unwrap();
thread::sleep(time::Duration::from_millis(500));
};
copy_with_progress(&test_file.0, &test_file.1, &options, handler).unwrap();
assert!(test_file.0.exists());
assert!(test_file.1.exists());
});
loop {
match rx.try_recv() {
Ok(process_info) => {
println!("{} of {} bytes",
process_info.copied_bytes,
process_info.total_bytes);
}
Err(TryRecvError::Disconnected) => {
println!("finished");
break;
}
Err(TryRecvError::Empty) => {}
}
}
Ok(())
}
fn main() {
example_copy();
}
Structs
A structure which stores information about the current status of a file that’s copied or moved. .
Functions
Copies the contents of one file to another. This function will also copy the permission
bits of the original file to the destination file.
Copies the contents of one file to another file with information about progress.
This function will also copy the permission bits of the original file to the
destination file.
Moves a file from one place to another. This function will also copy the permission
bits of the original file to the destination file.
Moves a file from one place to another with information about progress.
This function will also copy the permission bits of the original file to the
destination file.
Read file contents, placing them into
String
.Removes a file from the filesystem.
Write
String
content into file.