Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用ms appdata访问StorageFolder_C#_Windows Runtime_Storagefolder - Fatal编程技术网

C# 使用ms appdata访问StorageFolder

C# 使用ms appdata访问StorageFolder,c#,windows-runtime,storagefolder,C#,Windows Runtime,Storagefolder,我有一个应用程序,我必须存储和使用文件夹和文件的绝对路径。我有一个非常简单的问题。当我存储文件夹的路径时,如下所示:“ms-appdata:///local/my_folder“如果尝试从此路径获取StorageFolder,则会引发FileNotFoundException为什么会引发此异常? 阿法克小姐-appdata:///local/my_folder等于“C:\Data\Users\DefApps\AppData\{2F102375-2740-441C-BF2F-808608F47DA

我有一个应用程序,我必须存储和使用文件夹和文件的绝对路径。我有一个非常简单的问题。当我存储文件夹的路径时,如下所示:“ms-appdata:///local/my_folder“如果尝试从此路径获取StorageFolder,则会引发FileNotFoundException为什么会引发此异常?

阿法克小姐-appdata:///local/my_folder等于“C:\Data\Users\DefApps\AppData\{2F102375-2740-441C-BF2F-808608F47DA1}\Local\my_folder”。StorageFolder的GetFolderFromPathAsync静态方法接受后一个字符串如何从前者创建后者Uri,反之亦然?


编辑:澄清问题。

静态方法GetFolderFromPathAsync使用:\syntax。ms appdata:///不是路径名,而是URI方案,用于使用Windows.Storage.StorageFile.GetFileFromApplicationUriAsync方法。不幸的是,对于文件夹没有等效的方法

这给你留下了两个选择。一种是,您可以在该文件夹中存储一个简单的引用文件,使用GetFileFromApplicationUriAsync获取其StorageFile,然后查看StorageFile.GetParentAsync以获取StorageFolder


另一个选项是从Windows.Storage.ApplicationData.LocalFolder获取本地文件夹,然后在路径的相对部分执行GetFolderAsync。如果必须重建文件路径,则获取LocalFolder,并将相对文件夹路径附加到其path属性。这样,您就永远不会依赖用户访问其应用程序数据的确切路径。

我相信ms-appdata:///local/my_folder 等于“C:\Data\Users\DefApps\AppData\{2F102375-2740-441C-BF2F-808608F47DA1}\LocalState\my_folder”否。我已使用WP Power Tools检查我的应用程序中是否存在my_folder,但是,当我尝试获取您路径的StorageFolder时,它抛出了一个FileNotFound异常,但是它与我的路径配合得很好。您试图获取哪个路径的
StorageFolder
,这是什么意思?你能把问题编辑成包含相关代码行吗?