Я искал в Интернете ответы, но ничего не нашел. Позвольте мне объяснить мою ошибку: когда я пытаюсь открыть файл с локального пути, я получаю это сообщение:
Альтернативные имена потоков должны начинаться с "app-"
Мой код:
var itemId = ((Item)e.ClickedItem).Subtitle;
var file = await KnownFolders.VideosLibrary.GetFileAsync("file:///" + itemId);
var stream = await file.OpenAsync(FileAccessMode.Read);
music.SetSource(stream, ".mp3");
Я уже объявлял видео-библиотеки и музыкальные библиотеки в своем манифесте. субтитром в itemid является путь к файлу.
Проверьте эту ссылку. Я думаю, это может помочь вам
Два вопроса:
GetFileFromPathAsync requires a path and since it Async you need to Await it.
To use a URI like ms-appx use the GetFileFromApplicationUriAsync | getFileFromApplicationUriAsync method :
file = Await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///programs/TextFile1.txt"))
Вам также нужно добавить модификатор "Async" в объявление функции. См. "Быстрый старт". Вызов асинхронных API-интерфейсов на С# или Visual Basic для получения дополнительной информации об асинхронных методах.
Private Async Sub Button_Tapped(sender As Object, e As TappedRoutedEventArgs)
file = Await StorageFile.GetFileFromApplicationUriAsync(new Uri("c://TextFile1.txt"))
?
file:///
? Это требуется?