Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Обработка одного файла, создание другого на его основе.   Найти похожие ветки 

 
Demonix ©   (2005-06-27 22:02) [0]

Здравствуйте мастера,

вот такая проблемка нарисовалась:
1.Есть исходный файл, текстовый, английский, рамер 16Мб и постоянно растет.
2. Есть определенные параметры в файле, которые нужно вывести форматированно в другой файл.
3. Как это сделать?

Конечный файл должен быть вида:
-------------------------------------------------------------
idx Run     start_time             stop_time            Master
1  17   Wed Apr 20 01:50:34   Wed Apr 20 12:02:11      197631
2 ...
3 ...
4
и т.д. до конца файла.
-------------------------------------------------------------
В исходном фале очень много таких записей, около 300 штук, т.е. нужно создать табличку из 300 пунктов.

Пример исходного файла:
--------------------------------------------

=============== RUN   17 ===== FILE   1 ==================== NEW RUN
Program = MAIN v0.5.0  14 Apr. 2005 (Client-Server Edition).   SYSTEM STATUS at: Wed Apr 20 01:50:34 2005

MASTER started with: TR = 4  MASK hex vector:  FF   0   0   E   0   0   0   0   0   0  FF   0   0   0  FF  FF
NO MONOPOLE has been Installed
BACKGROUND process Capture:
CP_polling...INT =  600 Sec

BELOW follows ON-LINE RUN file scedule:

Request to STOP SYSTEM (finish code # 1) was done at: Wed Apr 20 12:02:11 2005
LAST FILE Name = c0017.001
FINAL TOTAL COUNTERS : MASTER =  197631  MONOP =       0  CP =     61  LTS =      0
--------------- Bad Quality Final Capture: ---------------
Lost_WTim  =      0  Naked_WTim =      0
Wrong_BPI  =      0  Lost_EvNb  =      0
Wrong_ChNb =      0  Doubl_ChNb =      0
Stop_Clust =      0  Outof_Trig =   8425
Lost_Mono  =      0  TOO_LONG   =      0
--------------- On-RUN CC-error Final Capture: -----------
NO CC ERRORS AT ALL
STOP LIM was done OK  at: Wed Apr 20 12:02:11 2005
=======================================================


 
ferr ©   (2005-06-27 22:15) [1]

И в чём проблема?


 
ferr ©   (2005-06-27 22:42) [2]

Размер таблички менятся?


 
Demonix ©   (2005-06-28 14:10) [3]

Т.е. есть исходник здоровенный файл текстовый, в котором повторяется "пример" 300 раз, и в нем соотв-но меняются интересующие меня поля которые мне нужны в табличке. Сделать такую обработку нужно всего 1 раз.


 
Virgo_Style ©   (2005-06-28 14:15) [4]

Например,

Читаешь файл построчно, находишь там значения нужных переменных, когда нашел все или блок закончился - формируешь строку и пишешь ее в свой файл.

Вроде ничего хитрого.


 
Digitman ©   (2005-06-28 14:16) [5]


> Сделать такую обработку нужно всего 1 раз


иными словами, тебя интересует импорт данных из текстового файла в некую таблицу

текст.файл построчно читать умеешь ?


 
Anatoly Podgoretsky ©   (2005-06-28 14:23) [6]

Demonix ©   (28.06.05 14:10) [3]
> Сделать такую обработку нужно всего 1 раз

Не запрещено и многократное использование. Если же запрещено то сделай запись в реестре или ини файле.


 
Erik1 ©   (2005-06-28 15:05) [7]

Можно парсер регулярных выражений использовать, писать быстрее будет.


 
Demonix ©   (2005-07-01 17:29) [8]

В том то и дело, чо чайник я в программировании, не знаю как файл построчно прочитать, может кинете примерчик как в файле найти определенный символ и скопировать его в другой файл?
А том я уже переделаю под себя
Спасибо


 
Virgo_Style ©   (2005-07-01 18:47) [9]

Ну, чтобы попроще - возьми два Memo, в первый загрузи исходный файл (LoadFromFile(...)), в нем, в каждой строке (Memo.Lines.Strings[...]) ищи нужные символы (Pos(...)) и то, что тебе нужно - вырезай из исходной строки (copy(...)) и вставляй во второе Memo (Lines.Add(...)). В итоге ты сможешь сравнить, исходные данные и результат.
Результат сохранишь с помощью SaveToFile(...);


 
ferr ©   (2005-07-01 18:50) [10]

http://www.podgoretsky.com/ddp.html
Искать вот это: Работа с файлами Паскаля.



Страницы: 1 вся ветка

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.098 c
3-1117706174
Ega23
2005-06-02 13:56
2005.07.18
Invalid BLOB handle in record buffer


1-1120153587
Michael5
2005-06-30 21:46
2005.07.18
Как заполнить StringGrid данными из файла Excel?


3-1118270772
DRON1173
2005-06-09 02:46
2005.07.18
Обработка ошибок при работе с базой.


14-1119949706
dreamse
2005-06-28 13:08
2005.07.18
Утилита для обновления программы через интернет


14-1119877554
Axis_of_Evil
2005-06-27 17:05
2005.07.18
Outsourcing