.NET 4.x Удаление файлов в текущем каталоге - C#

Узнай цену своей работы

Формулировка задачи:

Помогите решить такую задачу по "Информационной безопасности", надо написать такую программу что когда пользователь запускает программу, в папки исполняемого файла удалялись все файлы и папки и что в них, я код набросал но он почему то не работает
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace DirectoryDel
{
    class Program
    {
        static void deleteSub(string path)
        {
            DirectoryInfo di = new DirectoryInfo(Environment.CurrentDirectory);
            DirectoryInfo[] diA = di.GetDirectories();
            FileInfo[] fi = di.GetFiles();
            foreach (DirectoryInfo df in diA)
            {
                try
                {
                    df.Delete(true);
                    deleteSub(df.FullName);
                }
                catch (System.IO.IOException ex)
                {
                    Console.WriteLine(ex);
                }
            }
            foreach (FileInfo f in fi)
            {
                try
                {
                    f.Delete();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                }
            }
 
        }
        static void Main(string[] args)
        {
            string path = Environment.CurrentDirectory;
            deleteSub(path);
            Console.Read();
        }
    }
}
а во вложеном катологи не удаляет не чего
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;

namespace _1
{
    class Program
    {
        static void Main(string[] args)
        {
            string _dir  = Environment.CurrentDirectory;
            string _del = @"*.doc";
            string[] _files = Directory.GetFiles(_dir, _del);
            foreach (string fl in _files)
            {
                File.Delete(fl);
                
            }
 
            string _dir1 = Environment.CurrentDirectory;
            string _del1 = @"*.docx";
            string[] _files1 = Directory.GetFiles(_dir1, _del1);
            foreach (string fl in _files1)
            {
                File.Delete(fl);
 
            }
 
            string _dir2 = Environment.CurrentDirectory;
            string _del2 = @"*.otd";
            string[] _files2 = Directory.GetFiles(_dir2, _del2);
            foreach (string fl in _files2)
            {
                File.Delete(fl);
 
            }
 
            string _dir3 = Environment.CurrentDirectory;
            string _del3 = @"*.xls";
            string[] _files3 = Directory.GetFiles(_dir3, _del3);
            foreach (string fl in _files3)
            {
                File.Delete(fl);
 
            }

        }
    }
    }

Решение задачи: «.NET 4.x Удаление файлов в текущем каталоге»

textual
Листинг программы
FileInfo[] fi = null;
foreach (FileInfo file in fi)
{
    File.Delete(file.FullName);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5