Не удается найти двоичный файл в хранилище - PullRequest
0 голосов
/ 28 ноября 2018

Я пытаюсь получить доступ к двоичному файлу в моем проекте и прочитать его, но получаю следующую ошибку:

Системе не удается найти указанный файл.(Исключение из HRESULT: 0x80070002)

Сначала я попытался получить к нему доступ следующим образом:

StorageFile file = await ApplicationData.Current.LocalFolder.GetFileAsync("myBinaryFile");
                Stream stream = (await file.OpenReadAsync()).AsStreamForRead();
                BinaryReader brFile = new BinaryReader(stream);

, а затем попытался использовать его для доступа к нему:

StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///myBinaryFile"));

Но оба они вернули одну и ту же ошибку.Есть идеи?

1 Ответ

0 голосов
/ 28 ноября 2018

Проблема в том, что вы получили файл с неверным путем.Вы можете обращаться к файлам в хранилище данных приложения l ocal , используя протокол "ms-appdata: /// local /".Например:

ms-appdata:///local/myBinaryFile

Вы также можете использовать ApplicationData.Current.LocalFolder API получить файл, пожалуйста, убедитесь, что файл хранится в локальной папке.И путь к папке выглядит так: C:\Users\Account\AppData\Local\Packages\3e8cf79a-4746-457c-8f51-73809c7876fa_75cr2b68xxxx\LocalState

Используйте схему ms-appx URI для ссылки на файл, который поступает из пакета приложения .и вы также можете использовать InstalledLocation API.

Для более подробной информации, вы можете обратиться URI схемы

...