-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

以下が機能するはずです。そのパスを列挙します。txtOutputという名前の複数行のテキストボックスと、controlという名前の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 に答える
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 に答える