UWP 应用中 LocalCacheFolder 中文件的 URI

URI of a file in LocalCacheFolder in a UWP app

我有一个媒体文件,我正在 LocalCacheFolder 中保存(因为我不想备份它)。我想通过将 Source 设置为文件的 URI 来使用 MediaElement 播放文件。问题是我不知道 URI 会是什么样子。

这是保存文件的代码:

StorageFolder localFolder = ApplicationData.Current.LocalCacheFolder;

var file = await localFolder.CreateFileAsync(id, CreationCollisionOption.ReplaceExisting);
await FileIO.WriteBytesAsync(file, video);

如果我保存到 LocalFolder,URI 将如下所示:

ms-appdata:///local/myfile

但是 LocalCacheFolder 会是什么样子?

更新

所以,我做了一些更多的测试,看起来 URI 应该是

ms-appdata:///localcache/myfile

如果我使用 StorageFile.GetFileFromApplicationUriAsync 访问文件,这将完美运行,但如果我将其设置为 MediaElement 的来源,我会收到无效文件路径错误。

为了确保文件没有问题,我更改了要使用的代码 ApplicationData.Current.LocalFolderms-appdata:///local/myfile 风格的 URI,一切都完美无缺。

如果你想在 MediaElement 中玩 StorageFile 你应该使用 SetSource 方法:

var fileStream = await myStorageFile.OpenAsync(FileAccessMode.Read);        
mediaElement.SetSource(fileStream, myStorageFile.ContentType);