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 disky, soubory a adresáře.
Obor názvů System.IO obsahuje třídy File a Directory, které poskytují .NET Framework funkce, které pracují se soubory a adresáři. Protože metody těchto objektů jsou statické nebo sdílené členy, lze je použít přímo, aniž by byla nejprve vytvořena instance třídy.Přidružené k těmto třídám jsou třídy FileInfo a DirectoryInfo, které budou uživatelům známy z funkce My. K použití těchto tříd, je nutné plně kvalifikovat názvy nebo importovat obory názvů zahrnutím příkazů Imports na začátek ovlivněného kódu. Další informace naleznete v tématu Imports – příkaz (obor názvů a typ rozhraní .NET).
[!POZNÁMKA]
Další témata v tomto oddílu použijte My.Computer.FileSystem objekt namísto System.IO tříd pro práci s disky, soubory a adresáře.My.Computer.FileSystem Objekt je určen především pro použití v Visual Basic programy.System.IOtřídy jsou určena pro libovolný jazyk, který podporuje .NET Framework, včetně Visual Basic.
Definice datových proudů
.NET Framework používá datové proudy k čtení z a zápisu do souborů. Datový proud si lze představit jako sadu jednorozměrných souvislých data, která mají začátek a konec a kurzor označující aktuální pozici v datovém proudu.
Operace s datovými proudy
Data obsažená v datovém proud mohou pocházet z paměť, soubor nebo soketů protokolu TCP/IP.Datové proudy mají základní operace, které na nich mohou být použity:
Čtení.Můžete číst z datového proudu, přenesením data z datového proudu do struktury dat, jako je například řetězec nebo pole bajtů.
Zápis.Je možné zapisovat do datového proudu, přenesením dat ze zdroje dat do datového proudu.
Hledání.Můžete vyhledat a upravit vaši pozici v datovém proudu.
Další informace naleznete v tématu Skládání datových proudů.
Typy datových proudů
V .NET Framework je datový proud reprezentována pomocí třídy Stream, která tvoří abstraktní třídu pro všechny datové proudy. Nemůžete přímo vytvořit instanci třídy Stream, ale musí použít jednu z tříd, která jí implementuje.
Existuje mnoho typů datových proudů, avšak pro účely práce s vstupy a výstupy ze souboru (I/O), jsou nejdůležitější typy tříd FileStream, která umožňuje čtení a zapisování do souborů a třída IsolatedStorageFileStream, která umožňuje vytvoření souborů a adresářů na izolovaném úložišti. Jiné datové proudy, které lze použít při práci s vstupy-výstupy souborů jsou:
Následující tabulka obsahuje úkoly, které jsou běžně dosažitelné s datovými proudy:
Akce |
Odkaz |
Čtení a zápis do datových souborů |
|
Čtení textu ze souboru |
|
Zápis textu do souboru |
|
Číst znaku z řetězce |
|
Zápis znaků do řetězce |
|
Šifrování dat |
|
Dešifrovat data |
Atributy a přístupy k souborů
Je možné ovládat způsob jakým jsou soubory vytvářeny, otevírány a sdíleny pomocí výčtů FileAccess, FileModea FileShare, které obsahují příznaky, které používají konstruktory z třídy FileStream. Například při otevření nebo vytvoření nového FileStream, výčet FileMode vám umožňuje určit, zda je soubor otevřen pro přidávání, zda je vytvořen nový soubor pokud zadaný soubor neexistuje a nebo zda je soubor přepsán a tak dále.
Výčet FileAttributes umožňuje shromažďování informací specifických pro soubor. Výčet FileAttributes vrátí uložené atributy souboru, například zda jde o komprimovaný, zašifrovaný, skrytý, jen pro čtení, archivní, adresář, systémový soubor nebo dočasný soubor.
Následující tabulka obsahuje seznam úkolů týkajících se přístupu k souborům a atributů souborů:
Akce |
Odkaz |
Otevření a přidání textu do protokolového souboru |
|
Získání atributů souboru. |
Oprávnění souboru
Řízení přístupu k souborům a adresářům, může být prováděno třídou FileIOPermission. To může být zvláště důležité pro vývojáře pracující s webovými formuláři, který jsou ve výchozím nastavení spouštěny v rámci zvláštního místního uživatelského účtu s názvem ASPNET, který je vytvořen jako součást instalace ASP.NET and .NET Framework. Pokud taková aplikace požaduje přístup k prostředkům, ASPNET uživatelský účet má omezená oprávnění, která mohou zabránit uživateli v provádění činností, jako je například zápis do soubor z webové aplikace.Další informace naleznete v Oprávnění zabezpečenía FileIOPermission.
Izolované úložiště souborů
Izolované úložiště je pokus o řešení problémů, které vznikají při práci se soubory, kde uživatel nebo kód nemusí mít nezbytné oprávnění.Izolované úložiště přiřadí každému uživateli datový prostor, který může obsahovat jeden nebo více skladů.Úložiště můžou být navzájem izolována pomocí uživatelů a sestavení.Pouze uživatel a sestavení, kteří vytvořili úložiště k němu mají přístup.Úložiště funguje jako úplný virtuální systém souborů – v rámci jednoho úložiště můžete vytvořit a manipulovat s adresáři a soubory.
V následující tabulce jsou uvedeny úkoly běžně spojené s izolovaným uložistěm souborů.
Akce |
Odkaz |
Vytvoření izolovaného úložiště |
|
Výčet izolovaných úložišť |
|
Odstranění izolovaného úložiště |
|
Vytvoření souborů nebo adresářů v izolovaném úložišti |
|
Nalezení souborů v izolované úložišti |
Postupy: Hledání existujících souborů a adresářů v izolovaném úložišti |
Čtění nebo zapisování do soubor na izolovaném úložišti |
|
Smazání souborů nebo adresářů v izolovaném úložišti |
Postupy: Odstraňování souborů a adresářů v izolovaném úložišti |
Souborové události
Komponenta FileSystemWatcher umožňuje sledovat změny souborů a adresářů ve vašem systému nebo v libovolném počítači, ke kterým máte přístup přes síť. Například pokud je soubor změněn, můžete chtít odeslat upozornění uživateli, že se změna uskutečnila.Při výskytu změny, je aktivována jedna nebo více události, jsou uloženy do vyrovnávací paměti a jsou předána komponentě FileSystemWatcher pro zpracování.