![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
![]()
Я попробовал несколькими "заумными" способами, но, как ни странно, самым быстрым оказался обычный StringList.
Код:
|
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
угу. попробовал. через TFileStream почти минуту обрабатывало 1.5 миллиона строк (через TStringList около 4 секунд).
зато столько же (визуально, точно тики не мерял, занял простейший код через TextFile + Readln / WriteLn Код:
|
![]() |
![]() |
![]() |
#13 |
Форумчанин
Регистрация: 23.11.2010
Сообщений: 530
|
![]()
сколько знаков каждой строке примерно? 10? 100? 1000? 10млн?)))
|
![]() |
![]() |
![]() |
#14 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
unbanned, а какая разница?
судя по то, что файлы 10-15 миллионов строк и размером от 40 до 200 мб - в кажой строке примерно 10-20 знаков в каждой строчке.. я считаю, что тему можно считать закрытой. Предложено как минимум два полных и рабочих варианта. работать они должны, примерно, конечно, менее минуты... |
![]() |
![]() |
![]() |
#15 | |
Форумчанин
Регистрация: 23.11.2010
Сообщений: 530
|
![]() Цитата:
Код:
и можно закрывать тему))) мне этот вариант больше нравиться... просто поинтересовался, потому что если бы в каждой строке было даже по 1 млн символов, то такой вариант не подошел бы (про размеры файлов пост не увидел) Последний раз редактировалось unbanned; 30.11.2010 в 21:39. |
|
![]() |
![]() |
![]() |
#16 | |||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
В реальной жизни ещё можно и статусбар или прогрессбар прикрутить. Работы на пять минут, а пользователю сразу станет лучше жить - он будет видеть, что программа делает, и сколько ещё осталось.. Цитата:
Цитата:
достаточно изменить описание s : ShortString на s : String; (по умолчанию String равен AnsiString) и всё. можно строчки по 2 миллиарда символов читать/писать! p.s. думаю, что тему можно будет закрывать, когда VeroStat об это скажет... |
|||
![]() |
![]() |
![]() |
#17 |
Форумчанин
Регистрация: 23.11.2010
Сообщений: 530
|
![]()
хм...когда читается строчка из файла она ж остается в оперативке? так? в лучшем случае программе будет доступно гига 2... 2 048 * 1 024 = 2 097 152 байт... ну значит примерно столько же символов можно прочитать из файла. Т.е. если символов будет больше, тупо программе не хватит памяти
|
![]() |
![]() |
![]() |
#18 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#19 |
Форумчанин
Регистрация: 23.11.2010
Сообщений: 530
|
![]() |
![]() |
![]() |
![]() |
#20 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
это очень странный txt
![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
импорт из txt, работа с массивом данных, экспорт в txt | Danara | Microsoft Office Excel | 4 | 31.03.2010 00:26 |
Повторное открытие файла txt для редактирования в delphi | Shaggrath | Помощь студентам | 8 | 20.07.2009 13:36 |
автоматизация из ексел в txt | mistx | Microsoft Office Excel | 23 | 29.01.2009 07:18 |
запрет редактирования | AnGrig | Компоненты Delphi | 3 | 18.10.2007 11:37 |
Как прочесть txt файл www.site.ru/info.txt | BR17UY | Работа с сетью в Delphi | 1 | 16.04.2007 13:01 |