私のプログラムには、 C:\XML
C:\MyProg\Raw
C:\MyProg\Subset\MTSAT
C:\MyProg\Subset\GOESW
D:\Dataset\Composite
D:\Dataset\Global
Eなど、監視するパスがいくつかあります。 :\データセット\モザイク
C:\XML、C:\MyProg、D:\Dataset、E:\Dataset という 4 つのパスを CFolderWatch クラス インスタンスに追加して、上記の 7 つのパスすべての insetad を監視するフォルダーを目的として、その「サブディレクトリを含める」スイッチがTRUEに設定されています。監視されているすべてのパスがベクター コンテナーに追加されているとします。
したがって、私の質問は次のとおりです。同じ論理ドライブ上のパスの中で「最も一般的でない部分」を見つけるにはどうすればよいですか? 前もって感謝します!
私の質問に対する詳細な説明: 1. ユーザー定義のディレクトリをいくつか取得しました。2. これらのディレクトリを監視したい。3. 監視する前に、いくつかの準備作業を行いたいと思います。たとえば、同じ論理ドライブ上のパス間で共通部分を見つけて、監視クラスに非常に多くのパスを追加しないようにします。たとえば、論理ドライブ C: に C:\test\Data\R1、C:\test\Data\R2、C:\test\Data\R3 の 3 つのパスがある場合、共通のパスは「 C:\テスト\データ". したがって、3 つのパスではなく、「C:\test\Data」を監視モジュールに追加する必要があります。ここで共通パスとは、少なくとも 1 レベルのディレクトリがあることを意味します。1 つのパスが他のパスと共通のパスを持たない場合は、そのまま戻ります。4. まず最初に、アルゴリズムは異なる論理ドライブを処理する必要があります。つまり、すべてのパスは、それぞれのドライブ文字に基づいて分類する必要があります。次に、同じ論理ドライブ文字で渡されたパスの中で共通のパスを見つけます。