C# 如何向文件删除程序添加更多目录?

C# 如何向文件删除程序添加更多目录?,c#,C#,我正试图用它来删除几个目录中某些目录下的所有.htm文件,我使用递归。到目前为止,它只使用一个文件夹就可以正常工作,但我还没有找到一种方法来向代码中添加多个文件夹。是否有任何方法可以将更多目录添加到目录路径中,这样我就不必每次都要更改代码以删除另一个目录中的文件 namespace ConsoleApplication { class Deleter { static void Main(string[] args) { s

我正试图用它来删除几个目录中某些目录下的所有.htm文件,我使用递归。到目前为止,它只使用一个文件夹就可以正常工作,但我还没有找到一种方法来向代码中添加多个文件夹。是否有任何方法可以将更多目录添加到目录路径中,这样我就不必每次都要更改代码以删除另一个目录中的文件

namespace ConsoleApplication
{
    class Deleter
    {
        static void Main(string[] args)
        {
            string directorypath = @"C:\Public\";
            string[] directories = System.IO.Directory.GetDirectories(directorypath);
            DeleteDirectories(directories);
        }
        private static void DeleteDirectories(string[] directories)
        {
            foreach (string directory in directories)
            {
                string[] files = System.IO.Directory.GetFiles(directory, "*.htm");
                DeleteFiles(files);
                directories = System.IO.Directory.GetDirectories(directory);
                DeleteDirectories(directories);
            }
        }
        private static void DeleteFiles(string[] files)
        {
            foreach (string file in files)
            {
                FileInfo f = new FileInfo(file);
                if (f.CreationTime < DateTime.Now)
                    f.Delete();
            }
        }
    }
}
命名空间控制台应用程序
{
类删除器
{
静态void Main(字符串[]参数)
{
字符串directorypath=@“C:\Public\”;
string[]directories=System.IO.Directory.GetDirectories(directorypath);
删除目录(目录);
}
私有静态void deleteDirectory(字符串[]目录)
{
foreach(目录中的字符串目录)
{
字符串[]files=System.IO.Directory.GetFiles(目录“*.htm”);
删除文件(文件);
directories=System.IO.Directory.GetDirectories(目录);
删除目录(目录);
}
}
私有静态void DeleteFiles(字符串[]文件)
{
foreach(文件中的字符串文件)
{
FileInfo f=新的FileInfo(文件);
if(f.CreationTime
不要将可枚举目录设置为子目录&希望以这种方式递归,而是创建一个名为subdirectory的新引用。因此,您的foreach循环将如下所示:

...
foreach(var directory in directories)
{
 string[] files = System.IO.Directory.GetFiles(directory, "*.htm");
 DeleteFiles(files);
 var subDirectories = System.IO.Directory.GetDirectories(directory); 
 DeleteDirectories(directories);
{
....

你有什么具体的问题?没有更多的上下文,“更多的目录”是一件毫无意义的事情。你想“添加”哪些目录?你能添加一些关于你真正想删除的目录的详细信息吗?您正在尝试清除所有的.htm文件吗?
Main(string[]args)
是否想知道
args
位是关于什么的?是否要加入目录数组?感谢您的响应。在哪里可以包含额外的子目录?要做到这一点,您只需要遵循asawyer的建议&在Main方法上使用args参数。这是传入的命令行参数,因此您只需将所有要清理的目录列为cmd args。你应该认真阅读基础知识:很抱歉,我一直在问一些愚蠢的问题,但你能不能说得更具体一点,我还是有点困惑。