C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

ファイル検索の速さ・軽さについて /KTKT (23/11/10(Fri) 15:25) #102512
Re[1]: ファイル検索の速さ・軽さについて /KOZ (23/11/10(Fri) 16:01) #102513


親記事 / ▼[ 102513 ]
■102512 / 親階層)  ファイル検索の速さ・軽さについて
□投稿者/ KTKT (1回)-(2023/11/10(Fri) 15:25:33)

分類:[VB.NET/VB2005 以降] 

Visualstudio2019でVB.NETを使用しています。
VB.NETを使いだしたのが先月からなので、まだまだ分からないことが多いですが、質問させてください。
とある処理の中で、「常に」特定のフォルダを監視して、特定の文字列を含むファイルを、
ファイル名を取得し、中身を見て処理を行うということを行いたいと考えています。
ここで教えていただきたいのですが、「常に」特定のフォルダを監視して、
情報を取得するというやり方をとる場合、出来るだけ動きが軽い方法を選択したいです。
やり方として複数方法あると思いますが、効率云々抜きにして、パッと思いつくファイルの取得方法が、
ListBoxコントロールを「ListBox1」でフォーム上に作成し、

ListBox1.DataSource = System.IO.Directory.GetFiles("C:\TEST", "TEST*.txt")

で、「C:\TEST」のフォルダの中にある、名前の頭に「TEST」と付く「.txt」ファイルを取得する方法です。
これで臨む動き自体は出来ています。
素人考えですが、フォーム上にコントロールを作って、そこにファイル一覧を表示させて処理を行うというのは、
処理として重く、「常に」監視することを考えたとき、それなりの負担になるのではないかと考えました。

他に処理が軽く済む方法があれば、教えていただけたら幸いです。

[ □ Tree ] 返信 編集キー/

▲[ 102512 ] / 返信無し
■102513 / 1階層)  Re[1]: ファイル検索の速さ・軽さについて
□投稿者/ KOZ (422回)-(2023/11/10(Fri) 16:01:15)
No102512 (KTKT さん) に返信
> ここで教えていただきたいのですが、「常に」特定のフォルダを監視して、
> 情報を取得するというやり方をとる場合、出来るだけ動きが軽い方法を選択したいです。

FileSystemWatcher クラスを使うのが定石かと。
https://learn.microsoft.com/ja-jp/dotnet/api/system.io.filesystemwatcher

[ 親 102512 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -