Postupy: Vytvoření výčtu úložišť pro izolované úložiště

Pomocí statické metody můžete vytvořit výčet všech izolovaných úložišť pro aktuálního uživatele IsolatedStorageFile.GetEnumerator . Tato metoda přebírá IsolatedStorageScope hodnotu a vrací IsolatedStorageFile enumerátor. Pokud chcete vytvořit výčet úložišť, musíte mít IsolatedStorageFilePermission oprávnění, která určuje AdministerIsolatedStorageByUser hodnotu. Pokud voláte metodu GetEnumeratorUser s hodnotou, vrátí pole IsolatedStorageFile objektů, které jsou definovány pro aktuálního uživatele.

Příklad

Následující příklad kódu získá úložiště, které je izolované uživatelem a sestavením, vytvoří několik souborů a načte tyto soubory pomocí GetEnumerator metody.

using System;
using System.IO;
using System.IO.IsolatedStorage;
using System.Collections;

public class EnumeratingStores
{
    public static void Main()
    {
        using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null))
        {
            isoStore.CreateFile("TestFileA.Txt");
            isoStore.CreateFile("TestFileB.Txt");
            isoStore.CreateFile("TestFileC.Txt");
            isoStore.CreateFile("TestFileD.Txt");
        }

        IEnumerator allFiles = IsolatedStorageFile.GetEnumerator(IsolatedStorageScope.User);
        long totalsize = 0;

        while (allFiles.MoveNext())
        {
            IsolatedStorageFile storeFile = (IsolatedStorageFile)allFiles.Current;
            totalsize += (long)storeFile.UsedSize;
        }

        Console.WriteLine("The total size = " + totalsize);
    }
}
Imports System.IO
Imports System.IO.IsolatedStorage

Module Module1
    Sub Main()
        Using isoStore As IsolatedStorageFile = IsolatedStorageFile.GetStore(IsolatedStorageScope.User Or IsolatedStorageScope.Assembly, Nothing, Nothing)
            isoStore.CreateFile("TestFileA.Txt")
            isoStore.CreateFile("TestFileB.Txt")
            isoStore.CreateFile("TestFileC.Txt")
            isoStore.CreateFile("TestFileD.Txt")
        End Using

        Dim allFiles As IEnumerator = IsolatedStorageFile.GetEnumerator(IsolatedStorageScope.User)
        Dim totalsize As Long = 0

        While (allFiles.MoveNext())
            Dim storeFile As IsolatedStorageFile = CType(allFiles.Current, IsolatedStorageFile)
            totalsize += CType(storeFile.UsedSize, Long)
        End While

        Console.WriteLine("The total size = " + totalsize.ToString())

    End Sub
End Module

Viz také