如何删除文件夹及其内容,而不将其放入回收站?

Tor*_*726 5 c# file-io

我正在创建一个程序来在驱动器上运行文件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);
    }        
Run Code Online (Sandbox Code Playgroud)

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

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

Rah*_*thi 7

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

回收

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