问题 删除目录和子目录

戈莫

成员
加入
2017年3月9日
消息
7
编程经验
Beginner
你好,伙计们,

我一直试图弄清楚删除所有文件夹的方法&比旧的子文件夹"XX"天数..但没有运气。我忘了我的屁股,似乎似乎无法实现它。我还是新的C#所以因此为什么我在这里,要求你的帮助!

这是我的尝试:
C#:
                if (checkBox2.Checked == true)
                {
                    DirectoryInfo backups = new DirectoryInfo(Backup);
                    foreach (FileInfo file in backups.GetFiles())
                        if (file.LastWriteTime < DateTime.Now.AddDays(-30))
                            file.Delete();
                }
..我猜这一个^甚至不会按照我想要的方式工作,因为它只删除文件?
C#:
                if (checkBox2.Checked == true)
                {
                    string[] backups = Directory.GetFiles(Backup);

                    foreach (string folders in backups)
                    {
                        DirectoryInfo fi = new DirectoryInfo(folders);
                        if (fi.LastAccessTime < DateTime.Now.AddDays(-30))
                            fi.Delete();
                    }
                }
对于这个,我没有为什么它不起作用..

你有助于赞赏!提前致谢!

-亲切的问候-
戈莫
 

约翰

C#论坛主持人
工作人员
加入
2011年4月23日
消息
1,161
地点
挪威
编程经验
10+

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,732
地点
悉尼,澳大利亚
编程经验
10+
johnh已显示,您可以在文档中找到有用和相关信息。也许你应该读它。 VS有一个帮助菜单是有原因的。我们肯定可以帮助解决困难的东西,但你可以使用帮助,在大约30秒内为自己回答这个问题。
 

约翰

C#论坛主持人
工作人员
加入
2011年4月23日
消息
1,161
地点
挪威
编程经验
10+
好的.. gotcha,我应该使用什么? ..删除非空目录?
我确实发布了帮助主题链接的原因,你打开它吗?
 

戈莫

成员
加入
2017年3月9日
消息
7
编程经验
Beginner
我确实发布了帮助主题链接的原因,你打开它吗?

当然我做了......我现在回复,因为我昨天不得不去。和伙计们,你必须明白,并非每个人都真正进行编程并愿意花费大量时间。我得到了你不想发出解决方案"lazy people"但是,我们中的一些人正在这样做,因为只是被迫迫使并且没有其他选择。我不是说学习编程语言是一件坏事,因为它不是......它只是需要时间。是的,我可以为我付钱给我这样做,但我为什么要这样做?我在这里几个小时,我可以在那里投资编程,也找到了宣传的帮助,所以为什么不这样做?无论如何..感谢您的帮助,我想出来了!
 

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,732
地点
悉尼,澳大利亚
编程经验
10+
没有人要求你花费大量时间。它会花费更少的时间来使用帮助菜单和文档,而不是在此输入您的问题,然后等待答案。如果您实际上确实遵循Link Johnh提供,那么您已经拥有了答案,所以为什么你发布了这个问题,从不介意我们应该意识到你已经读过你已经阅读了答案的信息。我不能为每个人说话,但我不来这里,这样我就可以为他们做的工作。我来这里帮助他们成为更好的开发人员。如果你对那那没什么感兴趣,那就是很好,但我不会在我做我的工作或帮助其他人时花时间做你的工作。如果您确实想要更好,那么您需要阅读您可以使用的信息并使用它。如果您仍然存在一个问题,那么我们仍然可以帮助,但至少为自己说话,我希望您的努力展示,这通常意味着发布所用的代码,描述当您使用该代码时发生的事情的描述解释如何与您的期望不同。
 

戈莫

成员
加入
2017年3月9日
消息
7
编程经验
Beginner
如果您仍然存在一个问题,那么我们仍然可以帮助,但至少为自己说话,我希望您的努力展示,这通常意味着发布所用的代码,描述当您使用该代码时发生的事情的描述解释如何与您的期望不同。

我写的代码现在就像我想要的方式一样。
C#:
if (checkBox2.Checked == true && Selection2.Value > 0)
                {
                    double backupAge = Convert.ToDouble(Selection2.Value) * -1;
                    DirectoryInfo di = new DirectoryInfo(Backup);
                    if (di.LastWriteTime < DateTime.Now.AddDays(backupAge))
                    {
                        foreach (DirectoryInfo dir in di.GetDirectories())
                        {
                            dir.Delete(true);
                        }
                        foreach (FileInfo file in di.GetFiles())
                        {
                            file.Delete();
                        }
                    }
                }
它删除了比的所选目录中的所有文件和文件夹"Selection2.Value" ->用户输入。但现在,我遇到了另一个问题,我想打开最小化(在后台运行)cmd.exe,并使该窗口激活/选择。这是我正在使用的代码:
C#:
using System.Runtime.InteropServices;
        [DllImport("user32.dll")]
        static extern bool SetForegroundWindow(IntPtr hWnd);

        public void MakeWindowActive(string processName)
        {
            Process[] p = Process.GetProcessesByName(processName);
            if (p.Count() > 0)
                SetForegroundWindow(p[0].MainWindowHandle);
        }
MakeWindowActive("cmd");

但它似乎没有工作..有什么建议吗? (我做了谷歌的解决方案,其中没有工作)

-亲切的问候-
戈莫
 

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,732
地点
悉尼,澳大利亚
编程经验
10+
这是您所陈述的此线程的主题:
删除目录和子目录
这是您新问题的主题:
我想打开最小化(在后台运行)cmd.exe并使该窗口激活/选择。
这两件事完全无关。我们肯定可以帮助您的新问题,但它属于自己的线程,其中包含描述新主题的标题。
 
最佳 底部