在 c# 中,我如何检查文件名中是否包含“井号”和“撇号”这是我迄今为止尝试过但不起作用的方法。如果 # 或 ' 在文件名中,我需要发送错误
返回文件名.Contains("#\'");
在 c# 中,我如何检查文件名中是否包含“井号”和“撇号”这是我迄今为止尝试过但不起作用的方法。如果 # 或 ' 在文件名中,我需要发送错误
返回文件名.Contains("#\'");
您可以使用IndexOfAny:
if (filename.IndexOfAny(new char[] {'#', '\''}) > -1)
{
// filename contains # or '
}
尝试这样的事情:
Regex.IsMatch(fileName, @"[#']");
尝试以下
bool HasBadCharacters(string fileName) {
return fileName.IndexOf('\'') >= 0 || fileName.IndexOf('#') >= 0;
}
此代码将检查传入的整个文件名。因此,如果您传入完整路径,它将检查文件名和文件路径中的所有目录名。如果您只想检查文件名,请确保在将字符串传递给 HasBadCharacters 之前对字符串使用 Path.GetFileName()。