// ExtractingFilePath.h #ifndef __EXTRACTING_FILE_PATH_H #define __EXTRACTING_FILE_PATH_H #include "../../../Common/MyString.h" #ifdef _WIN32 void Correct_AltStream_Name(UString &s); #endif // replaces unsuported characters, and replaces "." , ".." and "" to "[]" UString Get_Correct_FsFile_Name(const UString &name); /* Correct_FsPath() corrects path parts to prepare it for File System operations. It also corrects empty path parts like "\\\\": - frontal empty path parts : it removes them or changes them to "_" - another empty path parts : it removes them if (absIsAllowed && path is absolute) : it removes empty path parts after start absolute path prefix marker else { if (!keepAndReplaceEmptyPrefixes) : it removes empty path parts if ( keepAndReplaceEmptyPrefixes) : it changes each empty frontal path part to "_" } */ void Correct_FsPath(bool absIsAllowed, bool keepAndReplaceEmptyPrefixes, UStringVector &parts, bool isDir); UString MakePathFromParts(const UStringVector &parts); #endif