Как сохранить данные в XML-файл в Windows Phone 7 - PullRequest
1 голос
/ 12 сентября 2011

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

 public static IsolatedStorageFile isstore = IsolatedStorageFile.GetUserStoreForApplication();
 public static IsolatedStorageFileStream xyzStrorageFileStream = new IsolatedStorageFileStream("/category.xml", System.IO.FileMode.OpenOrCreate, isstore);


public static XDocument xmldoc = XDocument.Load("category.xml");
favouriteDoc.Save(rssFavouriteFileStream);
rssFavouriteFileStream.Flush();

У кого-нибудь есть идеи? Как это сделать?

1 Ответ

4 голосов
/ 12 сентября 2011

Для сохранения структурированных данных вам необходимо использовать XML Writer или XML Serializer.

Например, чтобы сохранить данные:

using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
    using (IsolatedStorageFileStream isoStream = new IsolatedStorageFileStream("People2.xml", FileMode.Create, myIsolatedStorage))
    {
        XmlWriterSettings settings = new XmlWriterSettings();
        settings.Indent = true;
        using (XmlWriter writer = XmlWriter.Create(isoStream, settings))
        {

            writer.WriteStartElement("p", "person", "urn:person");
            writer.WriteStartElement("FirstName", "");
            writer.WriteString("Kate");
            writer.WriteEndElement();
            writer.WriteStartElement("LastName", "");
            writer.WriteString("Brown");
            writer.WriteEndElement();
            writer.WriteStartElement("Age", "");
            writer.WriteString("25");
            writer.WriteEndElement();
            // Ends the document
            writer.WriteEndDocument();
            // Write the XML to the file.
            writer.Flush();
        }
    }
}

Чтобы прочитать их обратно:

try
{
    using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
    {
        IsolatedStorageFileStream isoFileStream = myIsolatedStorage.OpenFile("People2.xml", FileMode.Open);
        using (StreamReader reader = new StreamReader(isoFileStream))
        {
            this.tbx.Text = reader.ReadToEnd();
        }
    }
}
catch
{ }

Ответ взят из этой статьи , поэтому все кредиты отправляются в WindowsPhoneGeek.Также см. Другие примеры в вышеупомянутом заголовке статьи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...