Удалить N строк из всех файлов в выбранной папке - C#

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

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

с одним файлом у меня проблем не возникло: считал файл и при записи пропустил через Skip нужное количество строк, а вот как сделать чтобы делалось тоже самое но только для нескольких файлов в выбранной папке?

Решение задачи: «Удалить N строк из всех файлов в выбранной папке»

textual
Листинг программы
                        //Количество строк
            int n;
            string dirPath = "{Путь к папке}";          
            //Если текст не распознаётся как число, ставим 0
            if(!(int.TryParse(textBox1.Text, out n)))
                n = 0;
            //Проходим по всем папкам
            foreach (var file in Directory.GetFiles(dirPath))
            {
                //Получаем все строки файла
                var strings = File.ReadAllLines(file, Encoding.GetEncoding(1251)).ToList();
                //Удаляем строки, начиная с {Количество строк} - n, в количестве n штук.
                strings.RemoveRange(strings.Count - n, n);
                //Сохраняем строки обратно в файл
                File.WriteAllLines(file, strings, Encoding.GetEncoding(1251));
            }

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


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

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

8   голосов , оценка 3.875 из 5
Похожие ответы