如何从目录中获取子文件夹中的文件
嗨我必须从目录中的指定路径获取文件。这是我写的方法,但我没有从子文件夹中获取文件。如何从目录中获取子文件夹中的文件
Private void getfiles(){
Directoryinfo info = new Directoryinfo(configurationmanager.appsettings["Targetroot"].tostring());
if (info.exists){
Gvfiles.datasource = info.GetFiles();
Gvfiles.databind();
}
}
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();
}
感谢您的评论。但是,这段代码不会从第一个文件夹中的文件夹中获取文件,无效,这就像我的代码 – Naveen 2012-08-02 12:08:29
您可以在directoryinfo(YourPath)中设置路径。尝试Server.MapPath – 2012-08-02 12:12:50
这将返回(立即)子目录的数组:
System.IO.DirectoryInfo ParentDirectory = new System.IO.DirectoryInfo(ParentPath);
System.IO.DirectoryInfo[] DirectoryArr = ParentDirectory.GetDirectories();
我相信你能找到一种方法,以使其适应你的喜好。
您将需要包含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
我们需要更多的细节 - 你得到了什么结果呢? – CJM 2012-08-02 10:45:37
你给出的代码应该正常工作检查[MSDN文章](http://msdn.microsoft.com/en-us/library/system.io.directoryinfo.aspx) – Vamsi 2012-08-02 10:46:19
在我的代码中,我得到的文件在第一个文件夹,我想从放置在第一个文件夹中的文件夹中找到文件.too – Naveen 2012-08-02 12:02:40