https://github.com/darkskygit/path-ext
Provide convenient methods for path operations
https://github.com/darkskygit/path-ext
Last synced: 8 months ago
JSON representation
Provide convenient methods for path operations
- Host: GitHub
- URL: https://github.com/darkskygit/path-ext
- Owner: darkskygit
- License: agpl-3.0
- Created: 2020-08-14T14:24:04.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-08-14T18:43:46.000Z (almost 2 years ago)
- Last Synced: 2025-02-06T16:56:59.648Z (over 1 year ago)
- Language: Rust
- Homepage: https://crates.io/crates/path-ext
- Size: 14.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# path-ext
Provide convenient methods for path operations
# Using
```rust
fn test_path() {
let path1 = PathBuf::from("Z:\\Movies\\[VCB-Studio] Fate Zero [Ma10p_1080p]\\[VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac].mkv");
println!("full path: {}", path1.full_str());
println!("file ext: {}", path1.ext_str());
println!("file stem: {}", path1.stem_str());
println!("file name: {}", path1.name_str());
let path2 = PathBuf::from("Z:\\Movies");
let path3 = PathBuf::from("[VCB-Studio] Fate Zero [Ma10p_1080p]\\[VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac].mkv");
let path4 = path2.merge(path3);
println!("merged full path: {}", path4.full_str());
println!("file: {}", path1.is_file());
println!("dir: {}", path2.is_dir());
if let Some(parent) = path4.parent() {
for path in parent.walk_dir(|p| p.is_dir()) {
println!("subdir: {}", path.full_str());
}
}
}
```
output:
```
running 1 test
full path: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]\[VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac].mkv
file ext: mkv
file stem: [VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac]
file name: [VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac].mkv
merged full path: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]\[VCB-Studio] Fate Zero [04][Ma10p_1080p][x265_flac].mkv
file: true
dir: true
subdir: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]
subdir: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]\CDs
subdir: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]\Scans
subdir: Z:\Movies\[VCB-Studio] Fate Zero [Ma10p_1080p]\SPs
test test_path ... ok
```