Главная страница
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.057 c
4-1143525270
stas77
2006-03-28 09:54
2006.06.25
события windows


3-1146039439
Сергей А.
2006-04-26 12:17
2006.06.25
Как вызвать хранимую функцию


3-1146477632
kilonet
2006-05-01 14:00
2006.06.25
Какие локальные БД позволяют хранить таблицу в нескольких файлах?


2-1149671044
NightCold
2006-06-07 13:04
2006.06.25
PARADOx


15-1148881568
Ega23
2006-05-29 09:46
2006.06.25
С Днём рождения! 29 мая