-4

我需要在 C# 中制作一个简单的 Windows 窗体应用程序,当我在文本框中键入内容时,程序将在路径中搜索单词。例如,C:\Users\John\Desktop使用文本框中的“文本”作为搜索键。

例子

text in textbox = "room"

该程序将在桌面上搜索“房间”。

可能的输出:(room202.swf) 任何文件扩展名,只要搜索键在名称上。

我希望我说清楚了..如果您对此有任何疑问,请随时提出。

4

4 回答 4

1

此代码包含一些可用于搜索目录的基本功能

static void Main(string[] args)
{
    string [] fileNames = Directory.GetFiles(@"c:\path");

    foreach(string fn in fileNames)
    {
        if(Path.GetFileName(fn).Contains(textBox1.Text))
        {
            //do something with fn
        }
    }
}

有关更多信息,请阅读System.IO 命名空间

于 2013-01-10T16:32:28.620 回答
1
string[] files = Directory.GetFiles(@"C:\Users\John\Desktop", "*" + textBox1.Text + "*");
foreach(string file in files)
{
    // Output file to user somewhere
}
于 2013-01-10T16:36:34.550 回答
0

尝试以下

string strToSearch "room";
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
string[] files = Directory.GetFiles(path , "*.*", SearchOption.AllDirectories);

 foreach(string fl in files)
    {
        if(Path.GetFileName(fl).Contains(strToSearch))
        {
            // Do the magic here
        }
    }
  1. 这里Environment.GetFolderPath(Environment.SpecialFolder.Desktop);将为您提供桌面的路径。
  2. 使用它来获取桌面中的所有文件路径Directory.GetFiles(path ,"*.*", SearchOption.AllDirectories);
于 2013-01-10T16:35:24.643 回答
0

下面应该工作。它列举了那条路径。确保有一个名为 txtOutput 的多行文本框和一个名为 txtSearch 的控件。你可以把它放在一个按钮点击或任何地方。

 txtOutput.Text = "";

 foreach(string file in Directory.GetFiles("c:\\path"))
    if(Path.GetFileName(file).Contains(txtSearch.Text))
        txtOutput.Text += txtOutput.Text + file + ", ";
于 2013-01-10T16:43:31.027 回答