积极答复者
Win RT中刪除LocalFolder中的文件夹

问题
-
我想刪除独立存储空间中自己建立的一个文件夹
这个文件夹的目录层次关系大概是:
LocalFolder
----TestFolderLevel1
-----TestFolder
------Test1.txt
------Test2.txt
现在我想刪除TestFolder,
我是这样子做的
StorageFolder TestFolderLevel1 = await Windows.Storage.ApplicationData.Current.LocalFolder.GetFolderAsync("TestFolderLevel1");
StorageFolde TestFolder = await TestFolderLevel1 .GetFolderAsync("TestFolder");
var allFiles = await TestFolder .GetFilesAsync();
foreach (StorageFile sf in allFiles)
{
await sf.DeleteAsync();
}await TestFolder .DeleteAsync();
结果在await sf.DeleteAsync();这个地方就报错了 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))
这是什么原因?
答案
-
你需要保证你的TestFolder和TestFolder下的文件和子文件夹没有被占用。
另外如果你要删除TestFolder 下的所有文件,只需要await TestFolder .DeleteAsync()。但是同样,需要保证你的TestFolder和TestFolder下的文件和子文件夹没有被占用。
Thanks! Damon.Tian
- 已建议为答案 Aaron XueModerator 2012年11月20日 9:25
- 已标记为答案 Aaron XueModerator 2012年12月4日 10:58
全部回复
-
你需要保证你的TestFolder和TestFolder下的文件和子文件夹没有被占用。
另外如果你要删除TestFolder 下的所有文件,只需要await TestFolder .DeleteAsync()。但是同样,需要保证你的TestFolder和TestFolder下的文件和子文件夹没有被占用。
Thanks! Damon.Tian
- 已建议为答案 Aaron XueModerator 2012年11月20日 9:25
- 已标记为答案 Aaron XueModerator 2012年12月4日 10:58