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

Вниз

Обработка log файла   Найти похожие ветки 

 
Shyrick   (2009-09-10 11:58) [0]

Доброе утро всем! Потоково обрабатываю лог файл--из одного файла копирую нужные строки в другой. Так как размер файлов велик (~100Mb) как реализовать отображение процента выполненой операции?
В частности как узнать кол-во строк в файле?


 
clickmaker ©   (2009-09-10 12:13) [1]

> из одного файла копирую нужные строки в другой

как?


 
Медвежонок Пятачок ©   (2009-09-10 12:14) [2]

зачем тебе строки?

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


 
Shyrick   (2009-09-10 20:34) [3]

Вообще я на С++ делаю, но все же построчно выбираю, анализирую и записываю. вот кучочек

FILE *log,*new_log;
log=fopen("log.txt","r");
ew_log=fopen("new_log.txt","w");
while (feof(log)==NULL) {
   fgets(buf,256,log);
   if (...условие...)
fprintf(new_log,"%s",buf);
}
 


 
Медвежонок Пятачок ©   (2009-09-10 21:15) [4]

и чо?


 
DVM ©   (2009-09-10 21:25) [5]


> Shyrick   (10.09.09 11:58)  


> В частности как узнать кол-во строк в файле?

Если только размер строки известен и фиксирован.

Но для создания прогресса обработки не нужно знать количество строк.
У тебя же есть количество обработанных байт и общее количество байт. Вот и думай.


 
Shyrick   (2009-09-10 21:40) [6]

Благодарю всех отклкнувшихся. Реализовал. Но затем убрал-время обработки увеличилось с 15 до 6 сек


 
Shyrick   (2009-09-10 21:41) [7]


> увеличилось с 15 до 6 сек
Т.е. уменьшилось =)


 
Inovet ©   (2009-09-10 21:51) [8]

> [6] Shyrick   (10.09.09 21:40)
> Благодарю всех отклкнувшихся. Реализовал. Но затем убрал-
> время обработки увеличилось с 15 до 6 сек

Ну так, не меняй прогресс на каждой итерации, а посчитай сначала сколько надо итераций для нормальной визуализации, и вызывай изменение прогресса через это количество.



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
6-1209058825
keymaster
2008-04-24 21:40
2009.11.01
Авторизация на FTP через AD


15-1251803846
DVM
2009-09-01 15:17
2009.11.01
Разбор командной строки на имя файла и параметры


1-1222101477
RustB
2008-09-22 20:37
2009.11.01
Смена стартовой страницы в браузере по умолчанию


2-1252766894
Реактор
2009-09-12 18:48
2009.11.01
Как быстрее всего сравнить два ричунка


2-1253103493
Людмила Павловна
2009-09-16 16:18
2009.11.01
Как в базе Access в запросе указать выходные параметры?