This documentation is archived and is not being maintained.

How to: Read and Write to Files in Isolated Storage

There are a number of ways to open a file within a store using the IsolatedStorageFileStream class. Once an IsolatedStorageFileStream has been obtained, it can be used to get a StreamReader or StreamWriter. With the StreamReader and StreamWriter, you can read and write to a file in a store as you would to any other file. For a wider discussion of reading and writing to a file, see File and Stream I/O.

The following code example obtains an isolated store, creates a file named TestStore.txt, and writes "Hello Isolated Storage" to the file. The code then reads the file and prints the results to the console.

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

Public Class ReadingAndWritingToFiles
    Public Shared Function Main() As Integer
        ' Get an isolated store for this assembly and put it into an
        ' IsolatedStoreFile object.
        Dim isoStore As IsolatedStorageFile = IsolatedStorageFile.GetStore(IsolatedStorageScope.User Or
            IsolatedStorageScope.Assembly, Nothing, Nothing)

        ' This code checks to see if the file already exists.

        Dim fileNames() As String = isoStore.GetFileNames("TestStore.txt")
        For Each file As String In fileNames
            If file = "TestStore.txt" Then
                Console.WriteLine("The file already exists!")
                Console.Write("Type ""StoreAdm /REMOVE"" at the command line to delete all ")
                Console.WriteLine("Isolated Storage for this user.")

                ' Exit the program.
                Return 0
            End If


        Console.WriteLine("The file ""TestStore.txt"" contains:")

        ' Call the readFromFile and write the returned string to the

        ' Exit the program.
        Return 0
    End Function ' End of main.

    ' This method writes "Hello Isolated Storage" to the file.
    Private Shared Sub writeToFile(isoStore As IsolatedStorageFile)
        ' Declare a new StreamWriter.
        Dim writer As StreamWriter = Nothing

        ' Assign the writer to the store and the file TestStore.
        writer = New StreamWriter(New IsolatedStorageFileStream(
            "TestStore.txt", FileMode.CreateNew, isoStore))

        ' Have the writer write "Hello Isolated Storage" to the store.
        writer.WriteLine("Hello Isolated Storage")


        Console.WriteLine("You have written to the file.")

    End Sub ' End of writeToFile.

    ' This method reads the first line in the "TestStore.txt" file.
    Private Shared Function readFromFile(isoStore As IsolatedStorageFile) As String
        ' This code opens the TestStore.txt file and reads the string.
        Dim reader As New StreamReader(New IsolatedStorageFileStream(
            "TestStore.txt", FileMode.Open, isoStore))

        ' Read a line from the file and add it to sb.
        Dim sb As String = reader.ReadLine()

        ' Close the reader.

        ' Return the string.
        Return sb.ToString()
    End Function ' End of readFromFile.
End Class