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

Вниз

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

 
Евгений   (2003-05-19 20:02) [0]

В Delphi у TFileStream есть процедура CopyFrom. Существует ли аналог в KOL у PStream. Если есть другой способ, опишите.
Заранее благодарен.


 
Gandalf ©   (2003-05-19 22:29) [1]

Вроде нет... Попробуй так:

function CopyFrom(Dest,Source: PStream; Count: Int64): Int64;
const
MaxBufSize = $F000;
var
BufSize, N: Integer;
Buffer: PChar;
begin
if Count = 0 then
begin
Source.Position := 0;
Count := Source.Size;
end;
Result := Count;
if Count > MaxBufSize then BufSize := MaxBufSize else BufSize := Count;
GetMem(Buffer, BufSize);
// try
while Count <> 0 do
begin
if Count > BufSize then N := BufSize else N := Count;
Source.Read(Buffer^, N);
Dest.Write(Buffer^, N);
Dec(Count, N);
end;
// finally
( Buffer, BufSize) [1]
Вроде нет... Попробуй так:

function CopyFrom(Dest,Source: PStream; Count: Int64): Int64;
const
MaxBufSize = $F000;
var
BufSize, N: Integer;
Buffer: PChar;
begin
if Count = 0 then
begin
Source.Position := 0;
Count := Source.Size;
end;
Result := Count;
if Count > MaxBufSize then BufSize := MaxBufSize else BufSize := Count;
GetMem(Buffer, BufSize);
// try
while Count <> 0 do
begin
if Count > BufSize then N := BufSize else N := Count;
Source.Read(Buffer^, N);
Dest.Write(Buffer^, N);
Dec(Count, N);
end;
// finally
FreeMem(Buffer, BufSize);
end;
end;


 
Евгений   (2003-05-19 23:34) [2]

Спасибо. Работает. Нужно обязательно добавить в KOL.


 
mdw ©   (2003-05-20 11:45) [3]

Есть функции Stream2Stream, Stream2StreamEx, Stream2StreamExBufSz



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
9-16014
lokid7
2003-07-21 12:07
2004.02.06
Помогите мне в D3D


1-16368
SniZ
2004-01-24 00:27
2004.02.06
Как создать маленькое приложение с формой?


3-16162
VVDAN
2004-01-14 14:03
2004.02.06
Кто работал с Halcyon?


6-16544
V.exeR
2003-12-02 06:57
2004.02.06
И еще... Как узнать размер и время создания файла


7-16753
Gorlum
2003-11-18 17:43
2004.02.06
Форматирование