c#如何读取给定路径下的所有文件,注意该路径下也许有子文件夹,子文件夹里有文件, 最终获取所有的文件名

不是文件夹的名... 不是文件夹的名 展开
 我来答
飘零的狐狸
2010-11-10 · TA获得超过1.8万个赞
知道大有可为答主
回答量:9251
采纳率:77%
帮助的人:2369万
展开全部
//3.---------遍历文件夹中的文件和子文件夹并显示其属性---------

if(Directory.Exists(Server.MapPath("a")))
{
//所有子文件夹
foreach(string item in Directory.GetDirectories(Server.MapPath("a")))
{
Response.Write("<b>文件夹:" + item + "</b><br/>");
DirectoryInfo directoryinfo = new DirectoryInfo(item);
Response.Write("名称:" + directoryinfo.Name + "<br/>");
Response.Write("路径:" + directoryinfo.FullName + "<br/>");
Response.Write("创建时间:" + directoryinfo.CreationTime + "<br/>");
Response.Write("上次访问时间:" + directoryinfo.LastAccessTime + "<br/>");
Response.Write("上次修改时间:" + directoryinfo.LastWriteTime + "<br/>");
Response.Write("父文件夹:" + directoryinfo.Parent + "<br/>");
Response.Write("所在根目录:" + directoryinfo.Root + "<br/>");
Response.Write("<br/>");
}

//所有子文件
foreach (string item in Directory.GetFiles(Server.MapPath("a")))
{
Response.Write("<b>文件:" + item + "</b><br/>");
FileInfo fileinfo = new FileInfo(item);
Response.Write("名称:" + fileinfo.Name + "<br/>");
Response.Write("扩展名:" + fileinfo.Extension +"<br/>");
Response.Write("路径:" + fileinfo.FullName +"<br/>");
Response.Write("大小:" + fileinfo.Length +"<br/>");
Response.Write("创建时间:" + fileinfo.CreationTime +"<br/>");
Response.Write("上次访问时间:" + fileinfo.LastAccessTime +"<br/>");
Response.Write("上次修改时间:" + fileinfo.LastWriteTime +"<br/>");
Response.Write("所在文件夹:" + fileinfo.DirectoryName +"<br/>");
Response.Write("文件属性:" + fileinfo.Attributes +"<br/>");
Response.Write("<br/>");
}
}
neu_bao
2010-11-10 · TA获得超过356个赞
知道小有建树答主
回答量:584
采纳率:0%
帮助的人:467万
展开全部
一定要做成递归函数。
ArrayList list = new ArrayList();
private void GetFileName(string path)
{
try
{
if (!Directory.Exists(path))
{
return;
}

DirectoryInfo di = new DirectoryInfo(path);
FileInfo[] fi = di.GetFiles();

foreach (FileInfo fiTemp in fi)
{
list.Add(fiTemp.Name);
System.Diagnostics.Debug.WriteLine(fiTemp.Name);
}
DirectoryInfo[] subDirList = di.GetDirectories();
if (subDirList.Length > 0 )
{
for (int i = 0; i < subDirList.Length; i++)
{
GetFileName(subDirList[i].FullName);
}

}
}
catch (Exception e)
{
System.Diagnostics.Debug.WriteLine(e.Message);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1a412ba
2010-11-10 · TA获得超过240个赞
知道小有建树答主
回答量:369
采纳率:0%
帮助的人:232万
展开全部
private List<string> GetFiles(string path)
{
List<string> dir = Directory.GetDirectories(path).ToList();
List<string> files = Directory.GetFiles(path).ToList();
List<string> fileNames = new List<string>();
foreach (string file in files)
{
fileNames.Add(Path.GetFileName(file));
}
foreach (string item in dir)
{
List<string> subFileNames = GetFiles(item);
fileNames.AddRange(subFileNames);
}
return fileNames;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友dc91b32
2010-11-10 · TA获得超过5650个赞
知道大有可为答主
回答量:5653
采纳率:0%
帮助的人:0
展开全部
System.IO.Directory.GetFiles("d:\\abc", "*.*", System.IO.SearchOption.AllDirectories);

最后一个参数的意思是找该文件夹下所有的文件(包含子文件夹)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式