mirror of
https://github.com/yaobiao131/downkyicore.git
synced 2025-08-10 00:52:31 +00:00
修复文件尾部. ..未完全去除
This commit is contained in:
@@ -125,36 +125,15 @@ public static class Format
|
||||
public static string FormatFileName(string originName)
|
||||
{
|
||||
var destName = originName;
|
||||
|
||||
// Windows中不能作为文件名的字符
|
||||
// destName = destName.Replace("\\", " ");
|
||||
// destName = destName.Replace("/", " ");
|
||||
// destName = destName.Replace(":", " ");
|
||||
// destName = destName.Replace("*", " ");
|
||||
// destName = destName.Replace("?", " ");
|
||||
// destName = destName.Replace("\"", " ");
|
||||
// destName = destName.Replace("<", " ");
|
||||
// destName = destName.Replace(">", " ");
|
||||
// destName = destName.Replace("|", " ");
|
||||
|
||||
// 转义字符
|
||||
// destName = destName.Replace("\a", "");
|
||||
// destName = destName.Replace("\b", "");
|
||||
// destName = destName.Replace("\f", "");
|
||||
// destName = destName.Replace("\n", "");
|
||||
// destName = destName.Replace("\r", "");
|
||||
// destName = destName.Replace("\t", "");
|
||||
// destName = destName.Replace("\v", "");
|
||||
destName = Path.GetInvalidFileNameChars().Aggregate(destName, (current, c) => current.Replace(c.ToString(), string.Empty));
|
||||
|
||||
// 控制字符
|
||||
var cleanedName = destName
|
||||
.SkipWhile(c => c == ' ' || c == '.')
|
||||
.Reverse()
|
||||
.SkipWhile(c => c == ' ' || c == '.')
|
||||
.Reverse()
|
||||
.ToArray();
|
||||
|
||||
|
||||
// 移除前导和尾部的空白字符、dot符
|
||||
destName = destName.Trim();
|
||||
destName = destName.Trim('.');
|
||||
|
||||
// 如果只有空白字符、dot符
|
||||
return destName is " " or "." ? "[empty title]" : destName;
|
||||
return new string(cleanedName.Length == 0 ? "[empty title]" : cleanedName);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user