pub fn sanitize_filename(filename: &str) -> StringExpand description
Sanitizes a filename by replacing invalid Windows characters.
This function ensures filenames are valid on Windows by:
- Replacing invalid characters (
< > : " / \ | ? *) with underscores - Removing leading/trailing whitespace and dots
- Using a default name if the result is empty
§Arguments
filename- The filename to sanitize
§Returns
Returns a Windows-compatible filename.
§Examples
assert_eq!(sanitize_filename("my:file?.txt"), "my_file_.txt");
assert_eq!(sanitize_filename(" .hidden "), "hidden");
assert_eq!(sanitize_filename("<<<"), "___");
assert_eq!(sanitize_filename("..."), "unnamed_file");