string[] strFile;
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\任务\111");
foreach (System.IO.FileInfo file in dir.GetFiles())
{
     strFile[]=file.FullName;// 全名
}
我想实现这样一个功能,循环得到文件夹111下的某种类型所有文件的名称,并赋值给数组strFile,但是提示错误.大哥大姐帮帮我这个菜鸟吧!

解决方案 »

  1.   

    System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\任务\111");
    string[] strFile=new string[dir.GetFiles().Count()];
    int i=0;
    foreach (System.IO.FileInfo file in dir.GetFiles())
    {
      strFile[i]=file.FullName;// 全名
    i++;
    }
      

  2.   

    System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\任务\111");
    string[] strFile=new string[dir.GetFiles().Count()];
    int i=0;
    foreach (System.IO.FileInfo file in dir.GetFiles())
    {
      strFile[i]=file.FullName;// 全名
    i++;
    }
      

  3.   

    数组操作太麻烦了吧?还一个一个赋值?我用的List,代码如下:
                
      List<string> strFile = new List<string>();
                DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\任务\111");
                foreach (FileInfo file in dir.GetFiles())
                {
                    //获取.sln文件名并加入List
                    string x = ".sln";
                    if (x.Equals(file.Extension.ToString()))
                    {
                        strFile.Add(file.FullName);
                    }
                }
      

  4.   

    好像没有dir.GetFiles().Count()吧,可以dir.GetFiles().Length
    System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\as");
                string[] strFile = new string[dir.GetFiles().Length];//GetFiles("*.")
                string[] strFilePath = new string[dir.GetFiles().Length];
                int i = 0;
                foreach (System.IO.FileInfo file in dir.GetFiles())
                {
                    strFilePath[i] = file.FullName;//完整目录
                    strFile[i] =System.IO.Path.GetFileName(file.FullName);//文件名称
                    i++;
                }