mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-30 01:07:21 +13:00
Handle AltDirectorySeparatorChar too
This commit is contained in:
parent
11b0623377
commit
34d9c5f893
1 changed files with 11 additions and 11 deletions
|
@ -192,17 +192,21 @@ public static string GetAbsolutePath(string path)
|
|||
|
||||
public static string SanitizeFileName(string fileName, string replaceWith = "")
|
||||
{
|
||||
fileName = fileName.Trim();
|
||||
char[] invalidChars = Path.GetInvalidFileNameChars();
|
||||
return SanitizeFileName(fileName, replaceWith, invalidChars);
|
||||
}
|
||||
|
||||
char[] invalidFileNameChars = Path.GetInvalidFileNameChars();
|
||||
private static string SanitizeFileName(string fileName, string replaceWith, char[] invalidChars)
|
||||
{
|
||||
fileName = fileName.Trim();
|
||||
|
||||
if (string.IsNullOrEmpty(replaceWith))
|
||||
{
|
||||
return new string(fileName.Where(c => !invalidFileNameChars.Contains(c)).ToArray());
|
||||
return new string(fileName.Where(c => !invalidChars.Contains(c)).ToArray());
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (char invalidFileNameChar in invalidFileNameChars)
|
||||
foreach (char invalidFileNameChar in invalidChars)
|
||||
{
|
||||
fileName = fileName.Replace(invalidFileNameChar.ToString(), replaceWith);
|
||||
}
|
||||
|
@ -220,14 +224,10 @@ public static string SanitizePath(string path, string replaceWith = "")
|
|||
path = path.Substring(root.Length);
|
||||
}
|
||||
|
||||
string[] paths = path.Split(Path.DirectorySeparatorChar);
|
||||
char[] invalidChars = Path.GetInvalidFileNameChars().Except(new char[] { Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar }).ToArray();
|
||||
path = SanitizeFileName(path, replaceWith, invalidChars);
|
||||
|
||||
for (int i = 0; i < paths.Length; i++)
|
||||
{
|
||||
paths[i] = SanitizeFileName(paths[i], replaceWith);
|
||||
}
|
||||
|
||||
return root + string.Join(Path.DirectorySeparatorChar.ToString(), paths);
|
||||
return root + path;
|
||||
}
|
||||
|
||||
public static bool OpenFile(string filePath)
|
||||
|
|
Loading…
Reference in a new issue