private void button1_Click(object sender, EventArgs e) {
DialogResult result = folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK) {
string[] files = Directory.GetFiles(folderBrowserDialog1.SelectedPath);
MessageBox.Show("Files found: " + files.Length.ToString(), "Message");
}
}
这将计算文件夹中的文件数。但是,我只需要对.txt
或.mp3
这样的文件夹中的特定文件进行计数。
发布于 2015-04-20 06:49:52
只需将不同的扩展合并:
String[] files = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.txt")
.Union(Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.mp3"))
.ToArray();
您可以根据需要连锁多少Union
。如果你只想数数你不需要使用任何数组的文件
private void button1_Click(object sender, EventArgs e) {
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
MessageBox.Show(Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.txt")
.Union(Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.mp3"))
.Count(),
"Message")
}
发布于 2015-04-20 06:46:05
DirectoryInfo di = new DirectoryInfo(@"C:/temp");
di.GetFiles("test?.txt").Length;
或
di.GetFiles("*.txt").Length;
发布于 2015-04-20 06:48:08
检查文件的扩展名是否在指定的集合中:
var validExts = new []{".txt", ".mp3"};
string[] files = Directory.GetFiles(folderBrowserDialog1.SelectedPath)
.Where(f => validExts.Contains(Path.GetExtension(f)))
.ToArray();
https://stackoverflow.com/questions/29750972
复制