How do I check if a given string is a legal/valid file name under Windows?

后端 未结 27 1706
-上瘾入骨i
-上瘾入骨i 2020-11-22 09:38

I want to include a batch file rename functionality in my application. A user can type a destination filename pattern and (after replacing some wildcards in the pattern) I n

27条回答
  •  一整个雨季
    2020-11-22 10:25

    I use this to get rid of invalid characters in filenames without throwing exceptions:

    private static readonly Regex InvalidFileRegex = new Regex(
        string.Format("[{0}]", Regex.Escape(@"<>:""/\|?*")));
    
    public static string SanitizeFileName(string fileName)
    {
        return InvalidFileRegex.Replace(fileName, string.Empty);
    }
    

提交回复
热议问题