| Crates.io | file_tree |
| lib.rs | file_tree |
| version | 0.1.1 |
| created_at | 2018-06-25 22:17:22.647101+00 |
| updated_at | 2019-07-03 20:00:32.713473+00 |
| description | Creates a directory structure suitable for storing large numbers of files, and optionally deletes the created directory and files when dropped. |
| homepage | |
| repository | https://github.com/pnnl/file_tree |
| max_upload_size | |
| id | 71703 |
| size | 20,449 |
Creates and manages a directory structure suitable for storing large numbers of files (up to 1 trillion).
Add this to your Cargo.toml:
[dependencies]
file_tree = "0.1.1"
Use FileTree::new(false) to create a temporary structure that will be deleted
when the created struct is dropped.
Calls to get_new_file() will generate a new PathBuf. The parent directory will exist, but get_new_file() will not actually create the file.
Use get_root() to retrieve the base path for the created directory structure.
extern crate file_tree;
use file_tree::FileTree;
fn main() {
let mut file_tree = FileTree::new(false).unwrap();
let writeable_path = file_tree.get_new_file().unwrap();
assert_eq!(
writeable_path,
file_tree.get_root().join("000/000/000/000000000000")
);
let writeable_path_2 = file_tree.get_new_file().unwrap();
assert_eq!(
writeable_path_2,
file_tree.get_root().join("000/000/000/000000000001")
);
}