Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Огромные проблемы с Огромными файлами [D6, WinXP]


Игорь ©   (2004-06-16 12:08:00) 

У меня есть несколько огоромных файлов ~900Мб типа extended. Мне нужно их дополнять, менять там значения и получать из них значения.

Как оптимизировать работу с файлами?
Что лучше:
1) один раз открыть и все время держать открытым или каждый раз открывать;
2) если нужно вытащить из файла несколько значений - можно брать их по одному или лучше скопом;
3) один файл я заполняю неподряд, а скачу (например сначало пишу 13-е число, затем 3046-е, потом 1-е и т.д.).
Что мне делать. Сейчас мне приходиться перед началом заполянть 900Мб нулями.
4) когда я работаю с такими файлами у меня время от времени компютер просто перестает обращать внимания на программу и все. Такое ощущение, что просто исчерпались ресурсы, хотя я просто открывал файл и не забитвал память.

Заранее очень благодарен.


Anatoly Podgoretsky   (2004-06-16 14:19:00) [1]

Нет по типизированому файлу и по нетипизированому прыгать быстрее и проще, при том очень быстро в отличии от базы.


WondeRu   (2004-06-16 14:03:00) [2]

>Базу на чисто типизированый файл, ты еще и Веб сервер предложил
я сурьезно! по одной табличке прыгать туда-сюда проще, чем по файлу!
(Это мое субъективное мнение, подкрепленное опытом разработки приложений для обработки результатов большого количества экспериментов)


Anatoly Podgoretsky   (2004-06-16 13:44:00) [3]

Базу на чисто типизированый файл, ты еще и Веб сервер предложил


DimKa   (2004-06-16 13:30:00) [4]

Можно использовать TFileStream и пругать по нему как угодно, да вроде и быстро получается.


WondeRu   (2004-06-16 13:03:00) [5]

2Игорь  
Используй лучше БД, FireBird какой-нибудь! А такие файлы использовать - жуть да только!


Alx2   (2004-06-16 12:54:00) [6]

>Игорь   (16.06.04 12:08)
Мне кажется, лучше Memory Mapped Files использовать в этом случае. Правда, при условии, что размер файла меняться не будет.


jack128   (2004-06-16 12:23:00) [7]


> 1) один раз открыть и все время держать открытым или каждый
> раз открывать;

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

если эти значения идут ПОДРЯД - друг за другом, то конечно лудше скопом. А если они не подряд идут, то я не понимаю, что означает "выбрать скопом" ;-)
> 3) один файл я заполняю неподряд, а скачу (например сначало
> пишу 13-е число, затем 3046-е, потом 1-е и т.д.).
> Что мне делать. Сейчас мне приходиться перед началом заполянть
> 900Мб нулями.
а  вообще - зачем тебе 900 мегобайт нулей?


Anatoly Podgoretsky   (2004-06-16 12:18:00) [8]

Менять, получать это быстро, а вот что под понятием дополнять срывается?


Sandman25   (2004-06-16 12:09:00) [9]

Файл как объявлен? Нужен типизированный ИМХО, тогда seek будет очень полезен.


Наверх

Титульная страница Поиск, карта сайта Написать письмо