Работа с текстовыми файлами

Sober

Client
Регистрация
21.12.2015
Сообщения
43
Благодарностей
4
Баллы
8
Всем привет! Бьюсь над логикой одного шаблона.
Вроде все очень просто, а на деле мозг закипел :-) Может быть сказывается, что давно не пробовал что-либо написать из шаблонов.
Суть шаблона такова: Есть, например 500 тестовых файлов со строками, нужно брать из каждого файла по первой строке (с удалением) и складывать в другой текстовик.
Пример: Есть 500 текстовиков, в каждом по 20 строк, по итогу должно получиться 20 текстовиков, в каждом по 500 строк.

Помогите, пожалуйста.
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 167
Благодарностей
2 168
Баллы
113
Вариант со списками и взятием первой строки с удаление отпадает, так как вроде в зенке нельзя кубиком создать список, только вручную. А 500 шт. списков нереально создать. Поэтому банально в цикле считываем текст в переменную из файла:
1. Кубиком зенки (Директории – список файлов) кладем в список («Список1_Файлы») все наши 500 файлов.
2. В цикле берем из списка поочередно каждый файл:
2.1 Считываем содержание файла в переменную “text”
2.2 регуляркой ^.*(?=\r\n) копируем первую строку.
2.3 Проверяем не пустая ли она (не опустел ли еще файл), если пустая, то проскакиваем к следующему файлу, или останавливаем процесс.
2.4 Потом той же регуляркой удаляем строку из переменной text.
2.5 Возвращаем переменную text в наш файл
2.6 Записываем строку в файл результатов
3. Берем следующий файл из списка, и возвращаемся к пункту №2.
4. Если список подошел к концу, опять начинаем с первого элемента.
 
  • Спасибо
Реакции: Sober

doc

Client
Регистрация
30.03.2012
Сообщения
8 608
Благодарностей
4 600
Баллы
113
можно иметь всего один список и поочередно привязывать к нему файлы
 
  • Спасибо
Реакции: Onacakyae и orka13

Sober

Client
Регистрация
21.12.2015
Сообщения
43
Благодарностей
4
Баллы
8
Вариант со списками и взятием первой строки с удаление отпадает, так как вроде в зенке нельзя кубиком создать список, только вручную. А 500 шт. списков нереально создать. Поэтому банально в цикле считываем текст в переменную из файла:
1. Кубиком зенки (Директории – список файлов) кладем в список («Список1_Файлы») все наши 500 файлов.
2. В цикле берем из списка поочередно каждый файл:
2.1 Считываем содержание файла в переменную “text”
2.2 регуляркой ^.*(?=\r\n) копируем первую строку.
2.3 Проверяем не пустая ли она (не опустел ли еще файл), если пустая, то проскакиваем к следующему файлу, или останавливаем процесс.
2.4 Потом той же регуляркой удаляем строку из переменной text.
2.5 Возвращаем переменную text в наш файл
2.6 Записываем строку в файл результатов
3. Берем следующий файл из списка, и возвращаемся к пункту №2.
4. Если список подошел к концу, опять начинаем с первого элемента.
Уф... Спасибо большое. Целый день думал над этим, от напряга даже не могу переварить твой вариант ))
Сможешь написать такой шаблон за небольшое фин. вознаграждение? )) *Если есть свободное время.
Если нет, завтра на свежую голову сам попробую написать
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)