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

Вниз

Работа с файлами с помощью ф-ций _lopen и _lread.   Найти похожие ветки 

 
Makuha   (2004-12-06 14:10) [0]

Привет всем!

Стоит задача: в некотором файле большого размера (около 1 Gb) найти данные, которые повторяются. Работал с функцией ReadBlock и читал данные в цикле до конца файла. Считаный блок обрабатывал сам (что и дальше собираюсь делать). Скорость не удовлетворяет. Блок считаных данных составляет 64к. А хотелось бы считать больше.
Подскажите, как с помощью ф-ций _lopen и _lread открыть и читать данные из файла. Не могу разобраться, как это правильно делать.
В HELP нашел вот такое описание,

HFILE _lopen(
   LPCSTR lpPathName, // pointer to name of file to open
   int iReadWrite  // file access mode
  );
UINT _lread(
   HFILE hFile, // handle to file
   LPVOID lpBuffer, // pointer to buffer for read data
   UINT uBytes  // length, in bytes, of data buffer
  );
а как правильно реализовать - не знаю. Буду благодарен за кусок исходника с описанием.
Ответы можно присылать на e-mail: mvalera@ua.fm и на форум.

С ув., Makuha.


 
Poirot ©   (2004-12-06 17:18) [1]

Я сомниваюсь что можно получить прирост от использования подобных средств.. Например можно же и через WinAPI (CreateFile(), ... , Mapped files, etc), и посмотреть алгоритм поиска. боюсь что он наиболее слабое по скорости место в данном случае.
А уж по теме - MSDN И там пример помоему есть:)


 
Fay ©   (2004-12-06 19:58) [2]

Правильно - это никак. Смотри CreateFile/ReadFile/SetFilePointer/ReadFile/WriteFile и т.д.

_lopen
The _lopen function opens an existing file and sets the file pointer to the beginning of the file.

Note  This function is provided only for compatibility with 16-bit versions of Windows. New applications should use the CreateFile function.



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

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

Наверх




Память: 0.47 MB
Время: 0.031 c
14-1104592017
Просто Джо
2005-01-01 18:06
2005.01.23
Какая гадость эта ваша... (по выбору)


3-1103377788
МАХНО
2004-12-18 16:49
2005.01.23
пароль на БД


1-1104089765
X3M
2004-12-26 22:36
2005.01.23
Левая/правая кнопа мыши


1-1105256977
Popovich A.
2005-01-09 10:49
2005.01.23
Експорт из QRep


14-1105117258
xman
2005-01-07 20:00
2005.01.23
LOG соединения с инетом