A minimal (file)path library
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1016 B

2 years ago
# libpath
### A minimal (file)path library
### Features
- Joining multiple path parts
- Cleaning path of duplicate separators
- Retrieval of path's parent
### Example
```c
// Compiling for *nix system (therefore the separator is '/')
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "libpath.h"
int main() {
char* path = path_join(4, "//here", "there", "/over/there_as_well", "file.txt");
printf("Joined path: %s\n", path);
char* parent = path_parent_copy(path);
2 years ago
printf("Parent: %s\n", parent);
path_free(&path);
2 years ago
// becomes parent of parent
path_parent(parent);
printf("Parent of parent: %s\n", parent);
2 years ago
path_free(&parent);
char* windows_path = path_join(2, "C:\\Documents\\", "file.txt");
printf("Windows path: %s\n", windows_path);
path_to_native_separators(windows_path);
printf("Windows path with native separators: %s\n", windows_path);
path_free(&windows_path);
2 years ago
return EXIT_SUCCESS;
}
```
### License
MIT