你好,在开发Windows 8 应用商店应用时,如何判断一个文件夹下是否存在某个文件?
比如说文件夹名称为folder,要查询的文件名为file,怎样判断folder中是否存在file。
网上介绍的一些办法比如用“File.Exists(@strFileName)”语句判断文件是否存在,但是这个方法不能用。
请教高手,谢谢。
在这个网页上有一个解决办法:http://www.devdiv.com/forum.php?mod=viewthread&tid=194038&page=1#pid914392
win8应用程序不允许自由地访问用户本地磁盘,只允许通过以下途径访问一些磁盘资源:
1. 用户通过打开文件选择框选择。通过这种途径你的程序能够获得较大的权限,因为是用户手动操作赋予的权限,安全性可以得到保证。但是我估计这种做法不适合你的需求。
2. 应用程序分配的文件夹。当你的应用程序被安装到win8系统下后,系统会给你的程序分配一个类似于“数据文件夹”的地方,可以通过ApplicationData.LocalStorage(还是类似的名字不记得了)来访问和操作里面的资源。
3. 系统资源文件夹,包括文档库,图片库等等。这种需要你在项目配置文件中进行声明,然后才可以访问对应的文件夹。
4. 如果要访问其他非特殊文件夹,写入肯定是不可以的,System.IO.File.Exists不是读取,我也不是很肯定,你先试试更改项目的兼容性(项目属性设置什么的里面找找)。
很重要的一点就是千万不要用普通windows程序的思想去想win8商店应用程序。它有它独立的一套运行机制和安全体系。
您总结的很全面,谢谢您,不过还是没有解决问题。
@sikla: 说了啊,这个问题无解的。另外,我看了楼下的那个链接,就是我说的,你只能访问ApplicationData.LocalFolder里的文件,比如我现在想让你判断C:\abc\ddd.txt是否存在,是没法办到的。
@水牛刀刀: 呃,多谢了。