使用StorageFile的DeleteAsync功能删除本地文件夹中的文件

时间:2013-01-17 09:33:59

标签: c# .net windows-8 microsoft-metro

我正在浏览Data文件夹中的所有文件,但没有删除任何文件。我不确定,但我认为我做错了什么,但我不知道它是什么:

private async void pageRoot_Unloaded(object sender, RoutedEventArgs e)
{
    IReadOnlyList<StorageFile> thefiles;

    var localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
    thefiles = await localFolder.GetFilesAsync();

    for(int i = 1; i < thefiles.Count; i++)
    {
        await thefiles[i].DeleteAsync(StorageDeleteOption.Default);
    }
}

我这样做了吗?任何想法为什么这不起作用?我没有收到任何编译时或运行时错误。

2 个答案:

答案 0 :(得分:2)

你有一个不同的问题,因为断点永远不会被击中,但我只想提一下......

您的第一个文件永远不会被删除,因为您正在将i初始化为1.将其初始化为0。

for(int i = 0; i < thefiles.Count; i++)
{
    await thefiles[i].DeleteAsync(StorageDeleteOption.Default);
}

答案 1 :(得分:1)

如果你在for for look上放置断点并逐步完成各个任务..看看await是否真的在等待。还放了try / catch,看看是否有任何异常被抛出。