在我的项目中,当我试图获取驱动器中所有文本文件的列表时,我只获得直接存在于驱动器中的文件。我无法获取驱动器文件夹中存在的文本文件,但我想这样做。有什么想法吗?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
namespace listofdirectories
{
public partial class WebForm1 : System.Web.UI.Page
{
string str;
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["drive"] != null)
{
str=Request.QueryString["drive"];
}
DirectoryInfo dinfo = new DirectoryInfo(str);
FileInfo[] Files = dinfo.GetFiles("*.txt");
foreach (FileInfo file in Files)
{
ListBox1.Items.Add(file.Name);
}
}
}
}
答案 0 :(得分:0)
使用同时收到this GetFiles Method的SearchOption Enumeration。如果您将其设置为AllDirectories
,则会搜索子文件夹
所以你的代码应该是这样的:
Directory.GetFiles(str, "*.txt", SearchOption.AllDirectories);