Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.038 c
1-1120383780
Ilg
2005-07-03 13:43
2005.07.18
Вкладки PageControl


1-1120129484
MY
2005-06-30 15:04
2005.07.18
Изменить имя


1-1120119358
mRodion
2005-06-30 12:15
2005.07.18
Прораммно менять фокусс ввода в форме


1-1119909466
Контр
2005-06-28 01:57
2005.07.18
Почему могут не срабатывать сообщеня OnMouseEnter и OnMouseLeave?


9-1112957487
П7
2005-04-08 14:51
2005.07.18
Динамическое освещение в 2Д





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский