文件名验证

本文关键字:验证 文件名 | 更新日期: 2023-09-27 17:49:21

我以以下方式检查文件名验证:

foreach (char c in System.IO.Path.GetInvalidFileNameChars())
{
    validFileName = validFileName.Replace(c, '_');
} 

有更快的方法吗?

文件名验证

这可能更快,但我不认为原来的会慢到足以关心…

var invalidChars = Path.GetInvalidFileNameChars();
var fileNameChars = validFileName.ToCharArray();
for (int i = 0; i < fileNameChars.Length; ++i)
    if (invalidChars.Contains(fileNameChars[i]))
        fileNameChars[i] = '_';
validFileName = new string(fileNameChars);

这有什么不对吗?两行实现,和堆栈溢出搜索,这显示您的答案匹配另一个问题的可接受的答案如何使一个有效的Windows文件名从任意字符串?