首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C# UWP使用System.IO.Directory返回空数组?

C# UWP使用System.IO.Directory返回空数组?
EN

Stack Overflow用户
提问于 2016-03-18 04:57:05
回答 2查看 1K关注 0票数 2

我试图返回Windows 10的UWP应用程序中的文件夹中包含的所有文件,代码如下所示:

代码语言:javascript
复制
var path = @"C:\Users\Desktop";
var files = System.IO.Directory.GetFiles(path);  //get empty arrays

但是,我得到了空字符串数组,我可以知道是什么导致了这个问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-18 05:16:35

对于uwp和存储应用程序,只有应用程序安装和应用程序临时文件夹才允许直接访问。直接的意思是..。没有Windows.Storge代理进程的访问。(System.IO是“直接”。)

如果你想像桌面一样访问应用程序的“外部”,你需要让用户通过File/FolderPicker来选择位置。如果没有用户交互,您就无法访问。

但是,Windows.Storage broker服务为文件操作提供了丰富的方法,并提供了像CommnonQuery特性这样的附加功能。有一些例外的图片,视频文件夹,但基本概念是一样的。

下面的链接可能对您有帮助。:)

文件访问权限

票数 3
EN

Stack Overflow用户

发布于 2016-03-18 05:03:21

可能是因为系统上不存在C:\Users\Desktop --它应该在C:\Users\YOUR_USERNAME\Desktop下。

此外,您的应用程序可能在沙箱中运行,因此所有文件系统访问都将虚拟化到其他地方的私有筒仓-- Windows将假装您指定的目录存在,但表示它是空的,因为它不希望您未经事先许可访问用户的文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36076459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档