Главная страница
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.039 c
4-1143123487
ANB
2006-03-23 17:18
2006.06.25
Как вытащить координаты клиентской области окна ?


15-1149219997
DelphiN!
2006-06-02 07:46
2006.06.25
Component list в BDS 2006


2-1149670549
Кирей
2006-06-07 12:55
2006.06.25
Как результаты запроса записать в *.xls файл


3-1145965808
Alpine
2006-04-25 15:50
2006.06.25
Проблемма с UPPER(FIELD) LIKE .... в IB 7.01


2-1149687624
mfender
2006-06-07 17:40
2006.06.25
TWebBrowser: перехват собитий (OnMouseDown)