我们有一个UWP应用程序 . 我想要解析一个XML文件,该文件将被另一个应用程序放入应用程序的添加数据中 . (我们的应用程序没有上传到商店,所以我们能够这样做) .
从我的UWP应用程序打开此文件的最佳方式是什么?我可以这样读吗?
StorageFile file =await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///" + xmlfile.xml));
我相信XML文件将被放置在 c:\users\[user]\AppData....
等位置
谢谢
1 回答
您应该将文件保存在
AppData\Local\Packages
中应用程序包文件夹的LocalState
或TempState
子文件夹中(具体取决于文件的用途 - 持久性或仅是临时性的) .现在您有两个选项来访问该文件:
使用ApplicationData类
您可以使用以下命令访问
LocalState
文件夹:和
TempState
文件夹使用:现在,这两个文件夹都是
StorageFolder
的正常实例,因此要获取文件,您只需调用:使用应用程序URI
或者,您可以使用特殊的应用程序URI来访问该文件 . 我提到的两个文件夹都分配了特殊的URI .
可以使用以下URI访问
LocalState
文件夹:和
TempState
文件夹使用:这意味着您可以使用以下命令从
LocalState
文件夹中获取文件:关于发布商缓存文件夹的注意事项
您可以使用第三个位置在应用之间共享文件 . 因为它们来自同一个发布者,所以您可以使用 Publisher cache folder 来存储和读取文件 . 更多信息可以在useful blogpost by Microsoft中找到 .