сохранить XML, выделенный на сервере wp7 - PullRequest
0 голосов
/ 28 октября 2011

Мне нужно сохранить файл XML с сервера. Я нашел код для загрузки, но я не понимаю, как сохранить файл в памяти. Как я могу это сделать?Я ищу в Google, и у меня есть это:

    public MainPage()
    {
        InitializeComponent();
        WebClient downloader = new WebClient();
        Uri xmlUri = new Uri("http://dl.dropbox.com/13258/file.xml", UriKind.Absolute);
        downloader.DownloadStringCompleted += new DownloadStringCompletedEventHandler(Downloaded);
        downloader.DownloadStringAsync(xmlUri);




    }

    void Downloaded(object sender, DownloadStringCompletedEventArgs e)
    {
        if (e.Result == null || e.Error != null)
        {
            MessageBox.Show("There was an error downloading the xml-file");
        }
        else
        {

            MessageBox.Show("Download succeed");
        }
    }

Я хочу сделать загрузку и сохранить ее в памяти.

1 Ответ

1 голос
/ 28 октября 2011

Код, который вы получите, загрузит файл с сервера. В Downloaded () вам нужно будет добавить код для сохранения только что загруженного файла.

В WP7 Вы сохраняете файлы в изолированном хранилище. Это специфичная для приложения файловая система, которую вы можете использовать для сохранения любых файлов, которые вы хотите использовать в своем приложении. Следующая ссылка описывает, как можно использовать изолированное хранилище:

http://www.windowsphonegeek.com/tips/all-about-wp7-isolated-storage-read-and-save-text-files

В вашем случае добавьте это к остальному в Downloaded ()

IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication();
using (StreamWriter writeFile = new StreamWriter(new IsolatedStorageFileStream("File.Xml", FileMode.OpenOrCreate, FileAccess.Write, myIsolatedStorage)))
{
    writeFile.WriteLine(e.Result);
    writeFile.Close();
}

Будьте внимательны с типом перечисления FileMode, в приведенном выше примере используется OpenOrCreate, который откроет существующий или создаст новый файл, т.е. перезапишет любой существующий файл с таким именем в корневой папке изолированного хранилища. Подробности об этом перечислении здесь:

http://msdn.microsoft.com/en-us/library/system.io.filemode.aspx

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