Практическое руководство. Создание файлов и каталогов в изолированном хранилище

После того как вы получите изолированное хранилище, в нем можно создавать файлы и папки для хранения данных. В хранилище имена файлов и каталогов указываются относительно корня виртуальной файловой системы.

Чтобы создать каталог, используйте экземпляр метода IsolatedStorageFile.CreateDirectory. Если вы укажете подкаталог в несуществующем каталоге, создаются оба этих каталога. Если вы укажете уже существующий каталог, метод сразу завершает работу, не создавая каталог и не вызывая исключений. Но если вы укажете в имени каталога недопустимые символы, создастся исключение IsolatedStorageException.

Для создания файла используется метод IsolatedStorageFile.CreateFile.

В изолированных хранилищах на операционной системе Windows регистр в именах файлов и каталогов не учитывается. Таким образом, если попытаться создать файл с именем ThisFile.txt и еще один файл с именем THISFILE.TXT, будет создан только один файл. Имя файла отображается в том регистре, который был указан при создании файла.

Создание файла изолированного хранилища приведет к возникновению исключения IsolatedStorageException, если путь содержит несуществующий каталог.

Пример

В примере кода ниже показано, как создавать файлы и каталоги в изолированном хранилище.

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

public class CreatingFilesDirectories
{
    public static void Main()
    {
        using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User | IsolatedStorageScope.Domain | IsolatedStorageScope.Assembly, null, null))
        {
            isoStore.CreateDirectory("TopLevelDirectory");
            isoStore.CreateDirectory("TopLevelDirectory/SecondLevel");
            isoStore.CreateDirectory("AnotherTopLevelDirectory/InsideDirectory");
            Console.WriteLine("Created directories.");

            isoStore.CreateFile("InTheRoot.txt");
            Console.WriteLine("Created a new file in the root.");

            isoStore.CreateFile("AnotherTopLevelDirectory/InsideDirectory/HereIAm.txt");
            Console.WriteLine("Created a new file in the InsideDirectory.");
        }
    }
}
Imports System.IO
Imports System.IO.IsolatedStorage

Module Module1
    Sub Main()
        Using isoStore As IsolatedStorageFile = IsolatedStorageFile.GetStore(IsolatedStorageScope.User Or IsolatedStorageScope.Assembly Or IsolatedStorageScope.Domain, Nothing, Nothing)

            isoStore.CreateDirectory("TopLevelDirectory")
            isoStore.CreateDirectory("TopLevelDirectory/SecondLevel")
            isoStore.CreateDirectory("AnotherTopLevelDirectory/InsideDirectory")
            Console.WriteLine("Created directories.")

            isoStore.CreateFile("InTheRoot.txt")
            Console.WriteLine("Created a new file in the root.")

            isoStore.CreateFile("AnotherTopLevelDirectory/InsideDirectory/HereIAm.txt")
            Console.WriteLine("Created a new file in the InsideDirectory.")
        End Using
    End Sub
End Module

См. также