接受用户输入并搜索静态目录

本文关键字:静态 搜索 用户 输入 | 更新日期: 2023-09-27 18:33:26

我的任务是创建一个应用程序,让用户在静态目录(共享驱动器)中搜索文件。 我有一个文本框供用户输入完整的文件名或部分文件名(由用户确定)。 我想要的是让它接受用户输入并查询目录并将所有匹配的值返回到列表框。

出于这个问题的目的...目录是:

 @("''server'directory'folder'subfolder'")

来自用户的输入存储为:

string search;

编辑

这是我到目前为止的代码。

string search;
search = searchTB.ToString();
DirectoryInfo di = new DirectoryInfo(@("''server'directory'folder'subfolder'");
// For a partial match
foreach (var fi in di.GetFiles("*" + search + "*"))
{
    Console.WriteLine(fi.Name);
    statusCodeLB.Items.Add(fi.Name);
}
// For an exact match
foreach (var fi in di.GetFiles(search))
{
     Console.WriteLine(fi.Name);
     statusCodeLB.Items.Add(fi.Name);
}

接受用户输入并搜索静态目录

这将解决问题:

string directory = @"''server'directory'folder'subfolder'";
string search = "userInput";
IEnumerable<string> files = Directory.GetFiles(directory).Where(file => file.Contains(search));

在此之后,您只需将数据绑定到列表框即可完成。

您可以使用

DirectoryInfo类,特别是GetFiles

DirectoryInfo di = new DirectoryInfo(@"''server'directory'folder'subfolder'");
// For a partial match
foreach (var fi in di.GetFiles("*" + search + "*"))
{
  Console.WriteLine(fi.Name);
}
// For an exact match
foreach (var fi in di.GetFiles(search))
{
  Console.WriteLine(fi.Name);
}

上面链接的 MSDN 页面包含您可以使用的选项的完整详细信息。