.NET 4.x Разделить один большой txt файл на несколько - C#

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

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

Есть на раб столе папка пустая а также есть большой тхт, в нем много строк. Вопрос таков: комп создает в пустой папке по очереди тхт и у каждого тхт имя идет как по циклу пока софт не выполнит работу, имена :1,2,3,4,5 итд. 1)софт создал первый тхт файл и в него сделал copy первых 3168 строк из болшого тхт и вставил эти строки в первый тхт в папке, вроде нормально обьяснил...... 2)после 1. пункта, софт создает следующий тхт в той же папке, где уже создан тхт с именем 1. Второй тхт имеет имя 2 и в нем находятся следующие 3168 строки из большого тхт(естественно первые 3168 софт пропускает т.к. они уже находятся в первом тхт)....тут тоже вроде все понятно и эти 2 пункта он будет делает пока не перекинет все строки из большого тхт по тхт файлам в папке.... Для меня проблематично решить эту задачу

Решение задачи: «.NET 4.x Разделить один большой txt файл на несколько»

textual
Листинг программы
  1.         var sourceTxt = @"c:\temp\big.txt";
  2.         var targetFolder = @"c:\temp\";
  3.  
  4.         SplitFile(sourceTxt, targetFolder);
  5.  
  6. ...
  7.  
  8.         static void SplitFile(string sourcePath, string targetFolder)
  9.         {
  10.             var count = 0;
  11.             var maxCount = 3168;
  12.             var currentFile = (StreamWriter) null;
  13.             var currentFileNumber = 1;
  14.  
  15.             foreach (var line in File.ReadLines(sourcePath))
  16.             {
  17.                 if (currentFile == null || count >= maxCount)
  18.                 {
  19.                     if (currentFile != null)
  20.                         currentFile.Dispose();
  21.                     currentFile = new StreamWriter(Path.Combine(targetFolder, currentFileNumber + ".txt"));
  22.                     currentFileNumber++;
  23.                     count = 0;
  24.                 }
  25.  
  26.                 currentFile.WriteLine(line);
  27.                 count++;
  28.             }
  29.  
  30.             if (currentFile != null)
  31.                 currentFile.Dispose();
  32.         }

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


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

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

9   голосов , оценка 4.111 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы