我有一个字符串,我想检查它是否包含任何无效的文件名字符。我知道我可以使用
Path.GetInvalidFileNameChars
获取无效文件名字符数组并循环查看该字符串是否包含任何无效的字符。但是有更简单和更短的表达吗?这是c#。那么有人可以帮忙吗?
答案 0 :(得分:3)
bool containsInValidFilenameCharacters(string str) {
return str.Any(Path.GetInvalidFileNameChars().Contains)
}
请注意,这与执行
相同var invalidChars = Path.GetInvalidFileNameChars();
return str.Any(c => invalidChars.Contains(c));
但由于Contains
的类型签名与参数委托类型Any
完全匹配,我们可以直接传递它,它将进行隐式转换。