Windows Phone не может найти файл JSON
Я пытаюсь прочитать данные из файла JSON в приложении.NET 4.5 для Windows Phone. После нажатия кнопки появляется исключение, говорящее:
System.IO.FileNotFoundException (Exception from HRESULT: 0x80070002)
Мой код:
public static async Task ReadFile()
{
StorageFolder local = Windows.ApplicationModel.Package.Current.InstalledLocation;
if (local != null)
{
var file = await local.OpenStreamForReadAsync("bazaDanych.json");
using (StreamReader streamReader = new StreamReader(file))
{
json = streamReader.ReadToEnd();
}
}
}
Вот мой взгляд на Solution Explorer:
1 ответ
Решение
Вы не копируете свой файл в локальное хранилище.
Поместите свой json-файл в папку Assets, убедитесь, что в его свойствах указано "Content" и "Copy Always"
При первом запуске вы должны прочитать JSON из пакета
var filename = "Assets/BazaDanych.json";
var sFile = await StorageFile.GetFileFromPathAsync(filename);
var fileStream = await sFile.OpenStreamForReadAsync();
И хранить в местном хранилище.
Есть пример для Windows 8 (который более или менее одинаков)