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

Вниз

Извлечение файла из несжатого архива.   Найти похожие ветки 

 
AlexanderMS ©   (2006-06-02 16:51) [0]

Подскажите, пожалуйста, как мне "взять" часть байтов из некого нетипизированного файла и сохранить эту часть как отдельный файл (т. е. извлечь из несжатого архива). Но этих байтов столько, что выдаётся ошибка:

---------------------------
Project CSFEditor.exe raised exception class EOutOfMemory with message "Out of memory". Process stopped. Use Step or Run to continue.
---------------------------

Как быть? Могу привести код, но думаю, что можно сделать лучше. Я пробовал считать string из первого и сохранить её во второй через TMemoryStream.


 
Рамиль ©   (2006-06-02 16:55) [1]

TFileStream


 
AlexanderMS ©   (2006-06-02 17:01) [2]


> TFileStream


Тут в общем-то то же самое получается: тоже Stream, а потом сохраняется через SaveToFile. Мне нужно как-то "вырезать" из одного файла и "вставить" в пустой другой, а затем его сохранить. Но начало "вырезки" и "конец" могут быть в любых местах в первом файле. Read даёт OutOfMemory. Вот, не знаю как...


 
Рамиль ©   (2006-06-02 17:05) [3]

Эх...
function CopyFrom(Source: TStream; Count: Int64): Int64;
для чего по твоему?
Устанавливаешь в исходном потоке Position на нужный байт, потом вызываешь CopyFrom во втором с нужным количеством байт.


 
AlexanderMS ©   (2006-06-02 17:11) [4]


> Рамиль ©   (02.06.06 17:05) [3]


Благодарю, сейчас попробую.



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
1-1145037989
Wog
2006-04-14 22:06
2006.06.18
Кнопка произвольной формы


2-1148988920
Steep
2006-05-30 15:35
2006.06.18
Цвет точки


3-1145216539
DevilDevil
2006-04-16 23:42
2006.06.18
Не видит параметров SQL запроса


3-1145623187
AndreyAR
2006-04-21 16:39
2006.06.18
Программный запуск DTS Package


15-1148024964
Sergey13
2006-05-19 11:49
2006.06.18
С Днем Пионерии, господа-товарищи!