我正在努力解决Windows应用商店应用程序的文件api。我想在数据导出时创建子文件夹以写入一些其他文件。这意味着:
data.txt
extra
+ 1.txt
+ 2.txt
数据.txt由用户选择,因此编写没有问题。但是我该如何创建此子文件夹?
storageFolder.getFolderAsync("Csomepathwheredataisextra").done(...
不起作用。由于安全限制,它似乎失败了。
我可以忍受写进文件。但是,当用户在文档文件夹中选择数据.txt时,它也不起作用。
恐怕这是"按设计"的行为。
Yoy 可以在您的应用程序特定文件夹中执行任何您想要的操作 (AppData(当用户通过文件激活或文件选取器授予您授权时,您可以在系统上的任何位置读取/编辑文件。有 API 可以延长该授权的生存期如果你的应用在其清单中选中了所需的功能,则可以读取/编辑已知文件夹中的文件。
由于安全限制,其他文件系统交互将失败。
如果决定让用户选择目录而不是文件。FolderPicker 将处理此作业。这不是我首选的解决方案,因为用户无法选择目标文件夹的名称。像Windows非RT一样在FolderPicker中创建选项可以解决这个问题,但还没有办法。
因此,我的用户必须在资源管理器文档中创建一个导出文件夹,然后在应用程序中选择它。
我的结构是:
Documents
+ export (created by user in explorer)
++ 2012-10-04 (hard coded by app)
+++ data.txt
+++ extra
++++ 1.txt
++++ 2.txt