Что нового

Чтение большого файла бинарно

maxd2007

Новичок
Сообщения
89
Репутация
0
Здравствуйте, подскажите возможно ли решение такой проблемы: имеется файл вес которого 3,2 Гб, при попытке
Код:
$hFile = FileOpen ( "File.img",16)
$hRead = FileRead ($hFile)

Выдает ошибку "Error allocating memory" (собственно об этом есть предупреждение и в справке, что при больших фаилах возможен вылет скрипта), можно ли как то решить проблему?
PS
Полная схема действий планируется такая, открываю фаил бинарно> ищу определенную последовательность > от нее отступаю на определенное количество байт > нахожу нужное смещение > по полученому смещению редактирую данные > тут 2 варианта окончания 1) сохранить в новый фаил 2) отредактировать существующий - но это не принципиальный вопрос.
 

joiner

Модератор
Локальный модератор
Сообщения
3,393
Репутация
594
читать только частями
Код:
FileSetPos
FileGetPos

и\или
Код:
FileRead;смотри пример чтения в цикле
 
Автор
M

maxd2007

Новичок
Сообщения
89
Репутация
0
Т.е. по сути мне надо отмерить часть фаила, со считать ее, проверить на наличие нужных мне элементов и редактировать?
 
Верх