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

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

Текстовые файлы огромного размера [D5, Win95/98, WinME, NT4, Win2k, WinXP]


QuickFinder ©   (2006-05-19 11:57:00) 

Как работать с текстовыми файлами огромного размера? (>2 Гб)

Пробовал так:
 Stream := TFileStream.Create(MyFile, fmOpenRead or fmShareDenyWrite);
 try
   Size := Stream.Size - Stream.Position;
   SetString(LargeS, nil, Size);
   Stream.Read(Pointer(LargeS)^, Size);
   P := Pointer(LargeS);

Код рабочий, но с 2 Гб файлами дает ошибку нехватки памяти.


Плохиш   (2006-05-19 12:31:00) [1]


> QuickFinder   (19.05.06 11:57)

http://www.ifm-services.com/people/jamesk/papers/object_pascal/memorymapping.html


Desdechado   (2006-05-19 12:10:00) [2]

я бы работал, раз уж файл текстовый, стандартными средствами типа
AssignFile Reset ReadLn


TUser   (2006-05-19 12:07:00) [3]

Работай с fiile of string[255] и читай файл кусками.


Наверх

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