如何检查目录中是否找不到xls?我尝试了下面的代码,但它不起作用......
if (!System.IO.File.Exists(".xls"))
{
MessageBox.Show("No XLS dile found");
}
答案 0 :(得分:10)
目前,您正在寻找名为.xls
的单个文件。您应该使用Directory.EnumerateFiles
:
if (!Directory.EnumerateFiles(directory, "*.xls").Any())
{
...
}
或者如果您仍然想要这些文件,请使用Directory.GetFiles
:
string[] files = Directory.GetFiles(directory, "*.xls");
if (files.Length == 0)
{
...
}
else
{
// Handle the files
}
(请注意,{4}在.NET 4中引入;当然,在这两种情况下都可以使用EnumerateFiles
,尽可能使用GetFiles
更简洁。)
答案 1 :(得分:2)
试试这个
if (!System.IO.Directory.GetFiles("C:\\path", "*.xls", SearchOption.AllDirectories).Any())
{
MessageBox.Show("No XLS dile found");
}
答案 2 :(得分:1)
尝试:
if (!Directory.EnumerateFiles(path, "*.xls").Any()) { ... }
答案 3 :(得分:1)
这样做
if (!System.IO.Directory.GetFiles("C:\\Users\\admin\\Desktop", "*.xls", System.IO.SearchOption.AllDirectories).Any())
{
Console.WriteLine("*.xls files not found");
}
else
{
Console.Write("*.xls files exist");
}
答案 4 :(得分:0)
也许它并不完美,但很简单:)
var files = Directory.GetFiles(directory);
if(!files.Any(x=>x.EndsWith(".xls")))
{
MessageBox.Show("No XLS dile found");
}