【问题标题】:How do I delete a folder and it's contents, without putting them in the recycle bin?如何删除文件夹及其内容,而不将它们放入回收站?
【发布时间】:2013-10-02 11:27:16
【问题描述】:

我正在创建一个程序来在驱动器上运行文件 I/O 压力,完成后,我想删除文件,但不想将它们放入回收站。这是我现在拥有的代码:

    public static void DeleteDirectory(string target_dir)
    {
        //Delete the files and folders created during stress.
        string[] files = Directory.GetFiles(target_dir);
        string[] dirs = Directory.GetDirectories(target_dir);
        foreach (string file in files)
        {
            File.SetAttributes(file, FileAttributes.Normal);
            File.Delete(file);
        }
        foreach (string dir in dirs)
        {
            DeleteDirectory(dir);
        }
        Thread.Sleep(30);
        Directory.Delete(target_dir, true);
    }        

但是这段代码只是将文件移动到回收站。我不想添加代码来自动清空回收站,因为那里可能有我不想删除的文件(这些文件可能属于其他人)。

注意:从到目前为止的回复来看,似乎人们可能误解了我在这里尝试做的事情。当我的程序删除文件时,它会将它们发送到回收站。我不希望这种情况发生,我想立即删除文件。我看不到任何方法可以告诉系统删除​​文件而不将它们发送到回收站。我永远不需要恢复文件。它默认发送到回收站,但我看不到任何改变它的方法。如果可能,请编辑我发布的代码以立即删除文件。我是新手 C# 用户。

【问题讨论】:

标签: c# file-io


【解决方案1】:

您正在寻找FileSystem.DeleteDirectory Method (String, UIOption, RecycleOption)

回收

指定是否将删除的文件发送到 回收站。默认为 RecycleOption.DeletePermanently。

【讨论】:

    猜你喜欢
    • 2010-09-06
    • 2010-12-11
    • 2011-11-30
    • 2010-11-18
    • 2017-07-15
    • 1970-01-01
    • 2014-04-01
    • 2022-10-15
    • 1970-01-01
    相关资源
    最近更新 更多