如何取目录下的所有文件,包括子目录的文件
我试了 Directory.GetFiles("d:\\web\\");
但不行,这个只能取目录下的所有文件,但子目录下的文件无法取到。
我试了 Directory.GetFiles("d:\\web\\");
但不行,这个只能取目录下的所有文件,但子目录下的文件无法取到。
解决方案 »
- asp.net 调试错误时总是转到百度,不显示具体错误...
- 用户传数据文件上来,服务器在将其导入sql2000,但总是超时,开了另一个线程来处理,好像还是不行
- 问个非常简单的问题,不想用MSDN了,不好玩
- 如何一个解决方案中的俩个项目中共用一个session吗?
- (新手虚心提问!)Datalist中嵌套一个Datagrid
- 请教一个用户注册页面的数据插入的问题?--郁闷了两天的问题!
- 高手:请问怎么实现一个中转页面,这个页面显示一些处理信息,过几秒钟就转向另一页面?
- 各位高手,请教WEB服务器的问题
- IOC容器相关问题
- 请教下面这个javascript函数的具体功能?
- asp.net中如何在DataGrid的编辑状态下控制编辑框只能输入的是数字并判断保留两位小数
- IIS问题
string strFileName="";
for(int i=0;i<fileList.Count;i++)
{
System.IO.FileInfo thisfile=new FileInfo(fileList[i].ToString ().Trim ());
strFileName+=thisfile.Name.ToString()+"_"; //得到目錄下所有文件的文件名.
}
/// <summary>
/// 梯归的方式列出目录下的所有可用的页面信息
/// 调用方法;
/// String sPath = Request.MapPath(Request.ApplicationPath);
/// System.IO.DirectoryInfo curDir = new System.IO.DirectoryInfo(sPath);
/// listAviablePages(curDir.CreateSubdirectory("modules"),"",suffix,ddlList);
/// 注:curDir.CreateSubdirectory("modules")为列出应用程序根目录下modules子目录下的所有可用页面信息
/// 如需列出应用程序根目录下的所有可用页面信息,直接用curDir即可
/// </summary>
/// <param name="curDir">当前的目录</param>
/// <param name="tempPath">临时路径,默认为空,一般不填</param>
/// <param name="suffix">存放扩展名的字符数组</param>
/// <param name="ddlList">要填充的下拉控件名,此处为DropDownList</param>
public static void ListAviablePages(System.IO.DirectoryInfo curDir,string tempPath,string[] suffix,DropDownList ddlList)
{
System.IO.FileInfo[] files = curDir.GetFiles("*.*");
for(int i = 0 ;i<files.Length;i++)
{
string fileName = tempPath+"/"+files[i].Name;
for(int j=0;j<suffix.Length;j++)
{
if(fileName.EndsWith(suffix[j]))
{
if(fileName.StartsWith("/"))
fileName = fileName.Substring(1);
ddlList.Items.Add(new ListItem(fileName,fileName));
}
}
}
System.IO.DirectoryInfo[] subDirs = curDir.GetDirectories();
for(int i = 0 ;i<subDirs.Length;i++)
{
if(subDirs[i].Name.StartsWith("_"))
continue;
string newPath = tempPath+"/"+subDirs[i].Name;
ListAviablePages(subDirs[i],newPath,suffix,ddlList);
}
}