Sdílet prostřednictvím


Postupy: Vytvořit soubory a adresáře v izolovaném úložišti

Po získání úložiště můžete vytvářet adresáře a soubory pro ukládání dat. V rámci úložiště jsou názvy souborů a adresářů určeny s ohledem na kořenový adresář virtuálního souborového systému.

Chcete-li vytvořit adresář, použijte instanční metodu CreateDirectory objektu IsolatedStorageFile. Zadáte-li podadresář nevytvořeného adresáře, jsou vytvořeny oba adresáře. Zadáte-li adresář, který již existuje, nebude generována žádná výjimka. Nicméně pokud zadáte název adresáře, který obsahuje neplatné znaky, je generována IsolatedStorageException.

Chcete-li vytvořit a otevřít soubor, použijte jeden z konstruktorů IsolatedStorageFileStream a předejte název souboru, hodnotu FileMode OpenOrCreate a úložiště, ve kterém chcete daný soubor vytvořit. Poté lze provádět očekávané činnosti s daty v datovém proudu souboru, jako je čtení, hledání a zápis. Konstruktor IsolatedStorageFileStream lze také použít k otevření souboru pro jiné účely.

Můžete vytvořit nebo otevřít soubory bez dříve získaného úložiště pomocí kteréhokoli konstruktoru IsolatedStorageFileStream, který nepřebírá argument IsolatedStorageFile. Použijete-li tento tvar konstruktoru, soubor bude vytvořen v úložišti domény pro daný soubor.

V systému souborů operačního systému Windows nejsou v názvech souborů a adresářů v izolovaném úložišti rozlišována malá a velká písmena pro účely porovnání názvů. Proto pokud vytvoříte soubor s názvem ThisFile.txt a později vytvoříte jiný soubor s názvem THISFILE.TXT, bude vytvořen pouze jeden soubor. Název soubor si pro účely zobrazení ponechá svou původní velikost písmen.

Příklad CreatingFilesAndDirectories

Následující příklad kódu ukazuje, jak vytvořit soubory a adresáře v izolovaném úložišti. Nejprve je získáno úložiště izolované podle uživatele, domény a sestavení a je umístěno do proměnné isoStore. Metoda CreateDirectory slouží k vytvoření několika různých adresářů a metoda IsolatedStorageFileStream vytvoří některé soubory v těchto adresářích.

Imports System
Imports System.IO
Imports System.IO.IsolatedStorage

Public Class CreatingFilesDirectories
    Public Shared Sub Main()
        ' Get an isolated store for user, domain, and assembly and put it into
        ' an IsolatedStorageFile object.

        Dim isoStore As IsolatedStorageFile
        isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User Or _
            IsolatedStorageScope.Assembly Or IsolatedStorageScope.Domain, Nothing, Nothing)

        ' This code creates a few different directories.

        isoStore.CreateDirectory("TopLevelDirectory")
        isoStore.CreateDirectory("TopLevelDirectory/SecondLevel")

        ' This code creates two new directories, one inside the other.

        isoStore.CreateDirectory("AnotherTopLevelDirectory/InsideDirectory")

        ' This file is placed in the root.

        Dim isoStream1 As New IsolatedStorageFileStream("InTheRoot.txt", FileMode.Create, isoStore)
        Console.WriteLine("Created a new file in the root.")
        isoStream1.Close()

        ' This file is placed in the InsideDirectory.

        Dim isoStream2 As New IsolatedStorageFileStream("AnotherTopLevelDirectory/InsideDirectory/HereIAm.txt", _
            FileMode.Create, isoStore)
        Console.WriteLine("Created a new file in the root.")
        isoStream2.Close()

        Console.WriteLine("Created a new file in the InsideDirectory.")
    End Sub
End Class
using System;
using System.IO;
using System.IO.IsolatedStorage;

public class CreatingFilesDirectories
{
    public static void Main()
    {
        // Get a new isolated store for this user, domain, and assembly.
        // Put the store into an IsolatedStorageFile object.

        IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
            IsolatedStorageScope.Domain | IsolatedStorageScope.Assembly, null, null);

        // This code creates a few different directories.

        isoStore.CreateDirectory("TopLevelDirectory");
        isoStore.CreateDirectory("TopLevelDirectory/SecondLevel");

        // This code creates two new directories, one inside the other.
        isoStore.CreateDirectory("AnotherTopLevelDirectory/InsideDirectory");

        // This file is placed in the root.

        IsolatedStorageFileStream isoStream1 =
            new IsolatedStorageFileStream("InTheRoot.txt", FileMode.Create, isoStore);
        Console.WriteLine("Created a new file in the root.");
        isoStream1.Close();

        // This file is placed in the InsideDirectory.

        IsolatedStorageFileStream isoStream2 =
            new IsolatedStorageFileStream("AnotherTopLevelDirectory/InsideDirectory/HereIAm.txt",
            FileMode.Create, isoStore);
        isoStream2.Close();

        Console.WriteLine("Created a new file in the InsideDirectory.");
    } // End of Main.
}
using namespace System;
using namespace System::IO;
using namespace System::IO::IsolatedStorage;

public ref class CreatingFilesDirectories
{
public:
    static void Main()
    {
        // Get a new isolated store for this user, domain, and assembly.
        // Put the store into an IsolatedStorageFile object.

        IsolatedStorageFile^ isoStore =  IsolatedStorageFile::GetStore( IsolatedStorageScope::User |
            IsolatedStorageScope::Domain | IsolatedStorageScope::Assembly,
            (Type ^)nullptr, (Type ^)nullptr);

        // This code creates a few different directories.

        isoStore->CreateDirectory("TopLevelDirectory");
        isoStore->CreateDirectory("TopLevelDirectory/SecondLevel");

        // This code creates two new directories, one inside the other.

        isoStore->CreateDirectory("AnotherTopLevelDirectory/InsideDirectory");

        // This file is placed in the root.

        IsolatedStorageFileStream^ isoStream1 =
            gcnew IsolatedStorageFileStream("InTheRoot.txt", FileMode::Create, isoStore);
        Console::WriteLine("Created a new file in the root.");
        isoStream1->Close();

        // This file is placed in the InsideDirectory.

        IsolatedStorageFileStream^ isoStream2 =
            gcnew IsolatedStorageFileStream("AnotherTopLevelDirectory/InsideDirectory/HereIAm.txt",
            FileMode::Create, isoStore);
        isoStream2->Close();

        Console::WriteLine("Created a new file in the InsideDirectory.");
    } // End of Main.
};

int main()
{
    CreatingFilesDirectories::Main();
}

Viz také

Odkaz

IsolatedStorageFile

IsolatedStorageFileStream

Koncepty

Izolované úložiště