Megosztás a következőn keresztül:


LINQ- és fájlkönyvtárak (Visual Basic)

Számos fájlrendszerművelet alapvetően lekérdezés, ezért jól illeszkedik a LINQ megközelítéshez.

Vegye figyelembe, hogy az ebben a szakaszban szereplő lekérdezések nem romboló jellegűek. Ezek nem használhatók az eredeti fájlok vagy mappák tartalmának módosítására. Ez azt a szabályt követi, hogy a lekérdezések nem okozhatnak mellékhatásokat. Általánosságban elmondható, hogy a forrásadatokat módosító kódokat (beleértve a létrehozási/frissítési/törlési operátorokat is) külön kell tartani az adatokat lekérdező kódtól.

Ez a szakasz a következő témaköröket tartalmazza:

Útmutató: Adott attribútummal vagy névvel rendelkező fájlok lekérdezése (Visual Basic)
Bemutatja, hogyan kereshet fájlokat az objektum egy vagy több tulajdonságának vizsgálatával FileInfo .

Útmutató: Fájlok csoportosítása bővítmény szerint (LINQ) (Visual Basic)
Azt mutatja be, hogyan lehet visszaadni az FileInfo objektumcsoportokat a fájlnévkiterjesztésük alapján.

Útmutató: A mappák halmazában (LINQ) lévő bájtok teljes számának lekérdezése (Visual Basic)
Azt mutatja be, hogyan adható vissza a megadott könyvtárfa összes fájljában lévő bájtok teljes száma.

Útmutató: Két mappa (LINQ) (Visual Basic) tartalmának összehasonlítása
Bemutatja, hogyan adja vissza a két megadott mappában található összes fájlt, valamint az egyik mappában található összes fájlt, de a másikat nem.

Útmutató: Lekérdezés a címtárfa legnagyobb fájljának vagy fájljainak lekérdezéséhez (LINQ) (Visual Basic)
Bemutatja, hogyan lehet visszaadni a legnagyobb vagy legkisebb fájlt, illetve egy megadott számú fájlt egy könyvtárfában.

Útmutató: Duplikált fájlok lekérdezése könyvtárfában (LINQ) (Visual Basic)
Bemutatja, hogyan csoportosítható az összes fájlnév, amely egy adott könyvtárfán egynél több helyen fordul elő. Azt is bemutatja, hogyan végezhet összetettebb összehasonlításokat egyéni összehasonlító alapján.

Fájlok tartalmának lekérdezése egy mappában (LINQ) (Visual Basic)
Bemutatja, hogyan lehet iterálni egy fa mappái között, hogyan nyithatja meg az egyes fájlokat, és kérdezheti le a fájl tartalmát.

Megjegyzések

Van némi összetettség egy olyan adatforrás létrehozásához, amely pontosan képviseli a fájlrendszer tartalmát, és elegánsan kezeli a kivételeket. Az ebben a szakaszban szereplő példák olyan objektumok pillanatképgyűjteményét FileInfo hozzák létre, amelyek egy adott gyökérmappában lévő összes fájlt és annak almappáit jelölik. Az egyes FileInfo elemek tényleges állapota változhat a lekérdezések végrehajtásának megkezdése és befejezése közötti időszakban. Létrehozhat például adatforrásként használandó objektumok listáját FileInfo . Ha egy lekérdezésben megpróbálja elérni a Length tulajdonságot, az FileInfo objektum megpróbálja elérni a fájlrendszert, hogy frissítse a tulajdonság értékét Length. Ha a fájl már nem létezik, megjelenik egy FileNotFoundException lekérdezés, még akkor is, ha nem közvetlenül kérdezi le a fájlrendszert. Az ebben a szakaszban szereplő egyes lekérdezések egy külön metódust használnak, amely bizonyos esetekben ezeket a kivételeket használja. Egy másik lehetőség az adatforrás dinamikus frissítése a FileSystemWatcher.

Lásd még