如何从目录中获取子文件夹中的文件

嗨,我必须从目录中的指定路径获取文件。 这是我写的方法,但我没有从子文件夹中获取文件。

Private void getfiles(){ Directoryinfo info = new Directoryinfo(configurationmanager.appsettings["Targetroot"].tostring ()); if (info.exists){ Gvfiles.datasource = info.GetFiles(); Gvfiles.databind(); } } 

您需要包含SearchOption.AllDirectories。

例:

 info.GetFiles("*", SearchOption.AllDirectories); 

参考: http : //msdn.microsoft.com/en-us/library/ms143327(v = vs.80).aspx

并且: http : //msdn.microsoft.com/en-us/library/ms143448(v = vs。80).aspx

这将返回(立即)子目录的数组:

 System.IO.DirectoryInfo ParentDirectory = new System.IO.DirectoryInfo(ParentPath); System.IO.DirectoryInfo[] DirectoryArr = ParentDirectory.GetDirectories(); 

我相信你可以找到一种方法来适应你的喜好。

 DirectoryInfo info = new DrectoryInfo(configurationmanager.appsettings["Targetroot"].tostring ()); //FileInfo[] _files = info.GetFiles("You could set a search pattern"); //FileInfo[] _files = info.GetFiles("*.aspx"); FileInfo[] _files = info.GetFiles(); Gvfiles.datasource = _files; Gvfiles.databind(); 

要么:

 DirectoryInfo info = new DirectoryInfo(Server.MapPath("/")); DirectoryInfo[] _info = info.GetDirectories(); for (int i = 0; i < _info.Length; i++) { FileInfo[] files = _info[i].GetFiles("search pattern"); Gvfiles.datasource = files; Gvfiles.databind(); }