1

我使用 C# 尝试了以下操作:

using System.IO;

string[] FileName = Directory.GetFiles("dir");
for (int i = 0; i < dir.Length; i++)
{
    comboBox1.Items.Add(Dirs[i]);
}

但由于某种原因,它只从该文件夹中获取 5 个文件。是否可以获取所有文件名并将它们放入组合框中?

提前致谢。

4

3 回答 3

0

可能你正在寻找这个:

 string[] FileName = Directory.GetFiles("dir","*",SearchOption.AllDirectories);
于 2014-03-12T17:16:35.497 回答
0
foreach(string fileName in Directory.GetFiles("dir", "*", SearchOption.AllDirectories))
{
    comboBox1.Items.Add(fileName)); 
}
于 2014-03-12T17:20:15.407 回答
0

问题:您将所有 FileNames 放入FileName字符串数组,但您只得到 5 个,因为您没有FileName在代码中使用字符串数组。

解决方案:您需要使用FileNameString Array 而不是dir.

尝试这个:

string[] FileName = Directory.GetFiles("dir");
for (int i = 0; i < FileName.Length; i++)    
{
   comboBox1.Items.Add(FileName[i]);
}

或者

string [] FileNames = Directory.GetFiles("dir");
foreach (var filename in FileName)    
{
  comboBox1.Items.Add(filename);
}
于 2014-03-12T17:15:29.113 回答