Základy vstupně-výstupních operací se soubory a systému souborů v rozhraní .NET Framework (Visual Basic)
Třídy v System.IO oboru názvů slouží k práci s jednotkami, soubory a adresáři.
Obor System.IO názvů obsahuje a FileDirectory třídy, které poskytují funkce rozhraní .NET Framework, které manipulují se soubory a adresáři. Vzhledem k tomu, že metody těchto objektů jsou statické nebo sdílené členy, můžete je použít přímo bez vytvoření instance třídy jako první. Přidružené k těmto třídám jsou FileInfo a DirectoryInfo třídy, které budou známé uživatelům My
této funkce. Pokud chcete tyto třídy použít, musíte plně kvalifikovat názvy nebo importovat příslušné obory názvů zahrnutím Imports
příkazů na začátek ovlivněného kódu. Další informace naleznete v tématu Import – příkaz (obor názvů .NET a typ).
Poznámka:
Další témata v této části používají My.Computer.FileSystem
objekt místo System.IO
tříd pro práci s jednotkami, soubory a adresáři. Objekt My.Computer.FileSystem
je určen především pro použití v programech jazyka Visual Basic. System.IO
třídy jsou určeny pro použití v libovolném jazyce, který podporuje rozhraní .NET Framework, včetně jazyka Visual Basic.
Definice streamu
Rozhraní .NET Framework používá streamy k podpoře čtení ze souborů a zápis do souborů. Datový proud si můžete představit jako jednorozměrnou sadu souvislých dat, která mají začátek a konec a kde kurzor označuje aktuální pozici v datovém proudu.
Operace streamu
Data obsažená v datovém proudu mohou pocházet z paměti, souboru nebo soketu TCP/IP. Toky mají základní operace, které se na ně dají použít:
Čtení. Můžete číst z datového proudu, přenášet data z datového proudu do datové struktury, jako je řetězec nebo pole bajtů.
Psaní. Do datového proudu můžete zapisovat a přenášet data ze zdroje dat do datového proudu.
Hledám. Můžete dotazovat a upravit svou pozici v datovém proudu.
Další informace najdete v tématu Psaní Toky.
Typy Toky
V rozhraní .NET Framework je datový proud reprezentován Stream třídou, která tvoří abstraktní třídu pro všechny ostatní datové proudy. Nelze přímo vytvořit instanci Stream třídy, ale musíte použít jednu z tříd, které implementuje.
Existuje mnoho typů datových proudů, ale pro účely práce se vstupem/výstupem souboru (V/V), nejdůležitějšími typy jsou FileStream třída, která poskytuje způsob čtení ze souborů a zápisu do souborů a IsolatedStorageFileStream třída, která poskytuje způsob, jak vytvářet soubory a adresáře v izolovaném úložišti. Mezi další datové proudy, které se dají použít při práci s vstupně-výstupními operacemi souborů, patří:
Následující tabulka uvádí úlohy, které se běžně provádí pomocí datového proudu:
Záměr | Seznamte se s |
---|---|
Čtení a zápis do datového souboru | Postupy: Čtení a zápis do nově vytvořeného datového souboru |
Čtení textu ze souboru | Postupy: Čtení textu ze souboru |
Zápis textu do souboru | Postupy: Zápis textu do souboru |
Čtení znaků z řetězce | Postupy: Čtení znaků z řetězce |
Zápis znaků do řetězce | Postupy: Zápis znaků do řetězce |
Šifrování dat | Šifrování dat |
Dešifrování dat | Dešifrování dat |
Přístup k souborům a atributy
Můžete řídit způsob vytváření, otevření a sdílení souborů s FileAccess, FileModea FileShare výčty, které obsahují příznaky používané konstruktory FileStream třídy. Například při otevření nebo vytvoření nového FileStream, FileMode výčet umožňuje určit, zda je soubor otevřen pro připojení, zda je vytvořen nový soubor, pokud zadaný soubor neexistuje, zda je soubor přepsán atd.
Výčet FileAttributes umožňuje shromažďování informací specifických pro soubor. Výčet FileAttributes vrátí uložené atributy souboru, například jestli je komprimovaný, šifrovaný, skrytý, jen pro čtení, archiv, adresář, systémový soubor nebo dočasný soubor.
Následující tabulka uvádí úlohy zahrnující přístup k souborům a atributy souborů:
Záměr | Seznamte se s |
---|---|
Otevření a připojení textu k souboru protokolu | Postupy: Otevření a připojení k souboru protokolu |
Určení atributů souboru | FileAttributes |
Oprávnění k souborům
Řízení přístupu k souborům a adresářům je možné provádět s FileIOPermission třídou. To může být zvlášť důležité pro vývojáře pracující s webovými formuláři, které se ve výchozím nastavení spouští v kontextu speciálního místního uživatelského účtu s názvem ASPNET, který je vytvořen jako součást instalace ASP.NET a rozhraní .NET Framework. Pokud taková aplikace požaduje přístup k prostředku, má uživatelský účet ASPNET omezená oprávnění, což může uživateli zabránit v provádění akcí, jako je zápis do souboru z webové aplikace. Další informace najdete na webu FileIOPermission.
Izolované úložiště souborů
Izolované úložiště je pokus o řešení problémů vytvořených při práci se soubory, ve kterých může uživatel nebo kód chybět potřebná oprávnění. Izolované úložiště přiřadí každému uživateli datový oddíl, který může obsahovat jedno nebo více úložišť. Úložiště můžou být navzájem oddělena uživatelem a sestavením. Přístup k němu mají jenom uživatelé a sestavení, které vytvořilo úložiště. Úložiště funguje jako kompletní virtuální systém souborů – v jednom úložišti můžete vytvářet a manipulovat s adresáři a soubory.
V následující tabulce jsou uvedeny úlohy běžně přidružené k izolovanému úložišti souborů.
Záměr | Seznamte se s |
---|---|
Vytvoření izolovaného úložiště | Postupy: Získávání úložišť pro izolované úložiště |
Vytvoření výčtu izolovaných úložišť | Postupy: Vytvoření výčtu úložišť pro izolované úložiště |
Odstranění izolovaného úložiště | Postupy: Odstraňování úložišť v izolovaném úložišti |
Vytvoření souboru nebo adresáře v izolovaném úložišti | Postupy: Vytváření souborů a adresářů v izolovaném úložišti |
Vyhledání souboru v izolovaném úložišti | Postupy: Hledání existujících souborů a adresářů v izolovaném úložišti |
Čtení ze souboru nebo zápis do souboru v izolovaném úložišti | Postupy: Čtení a zápis do souborů v izolovaném úložišti |
Odstranění souboru nebo adresáře v izolovaném úložišti | Postupy: Odstraňování souborů a adresářů v izolovaném úložišti |
Události souborů
Tato komponenta FileSystemWatcher umožňuje sledovat změny souborů a adresářů ve vašem systému nebo na jakémkoli počítači, ke kterému máte přístup k síti. Pokud je například soubor změněn, můžete uživateli poslat upozornění, že došlo ke změně. Když dojde ke změnám, dojde k vyvolání jedné nebo více událostí, uloží se do vyrovnávací paměti a předá komponentě FileSystemWatcher ke zpracování.