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

Вниз

TFileStream.CopyFrom   Найти похожие ветки 

 
AlexanderMS ©   (2006-06-03 18:40) [0]

TFileStream.CopyFrom при инструкции копировании из одного потока в другой n байт копирует от текущей позиции, но почему-то всё до конца, и сохраняется файл, обрезанный сначала (после вызова метода Seek первого файлстрима), но не обрезанный с конца. Приходится устанавливать размер второго потока через SetSize. Тогда зачем нужно число байт в параметре? Что я делаю не правильно?


 
sniknik ©   (2006-06-03 18:54) [1]

> Что я делаю не правильно?
ну... я так думаю все, все неправильно, начиная с 17й строки и по 117ю. выкинуть и переписать, предварительно сверившись с  хелпом (F1)...


 
AlexanderMS ©   (2006-06-03 19:00) [2]


> предварительно сверившись с  хелпом (F1)...

В хелпе дан простой пример: копирование одного файла в другой: от нуля до Size. Только сейчас заметил, что у меня не так:

FS2 := TFileStream.Create(filename, fmopenwrite);

А нужно было:

FS2 := TFileStream.Create(filename, fmcreate);

В файле остался мусор от прежних эксперментов. Я всё понял. Спасибо.


 
DevilDevil ©   (2006-06-03 23:07) [3]

AlexanderMS ©   (03.06.06 18:40) [0]
Скорее всего помогу, если пойму, в чём проблема


 
Eraser ©   (2006-06-03 23:26) [4]


> AlexanderMS ©   (03.06.06 18:40)


> но почему-то всё до конца

см. F1
[Delphi] function CopyFrom(Source: TStream; Count: Int64): Int64;
...
CopyFrom copies Count bytes from the stream specified by Source into the stream. It then moves the current position by Count bytes, and returns the number of bytes copied.
If Count is 0, CopyFrom sets Source position to 0 before reading and then copies the entire contents of Source into the stream. If Count is greater than or less than 0, CopyFrom reads from the current position in Source.

PS показывай код.



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
15-1148994956
oldman
2006-05-30 17:15
2006.06.25
Интересная компоновка... :)


15-1149012642
Bogdan1024
2006-05-30 22:10
2006.06.25
агенства недвижимости - поделитесь опытом


2-1149689900
AlexeyT
2006-06-07 18:18
2006.06.25
Сделать выделение прямоугольника мышью


10-1121165932
granni
2005-07-12 14:58
2006.06.25
COM в Delphi


11-1129621644
Боб
2005-10-18 11:47
2006.06.25
KOLECMLISTEDIT ошибки при компиляции