Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
ВнизTFileStream и TMemoryStream Найти похожие ветки
← →
Anatoly P (2002-10-23 15:11) [0]Хочу записать значение ms(TMemoryStream) в файл, а потом извлечь.
Запись:
var
FS:TFileStream;
ms:TMemoryStream;
ii:integer;
.........
fs:=TFileStream.Create("c:\111111.fff",fmCreate);
ms:=TMemoryStream.Create;
.....
ii:=ms.Size;
fs.WriteBuffer(ii,sizeof(ii));// пишу длину ms
ms.Position:=0;
fs.WriteBuffer(pointer(ms)^,ms.Size);// пишу саму ms
ms.Free;
fs.Free;
А прочитать не могу, как лечить?
fs:=TFileStream.Create("c:\111111.fff",fmOpenRead);
fs.ReadBuffer(ii,sizeof(ii));
ms2:=TMemoryStream.Create;
// ms2.Position:=0;
fs.ReadBuffer(ms2 ,ii);/// ошибка
......
ms.free;
fs.Free;
Не мешало бы проверить и запись, может и там ошибки
← →
MBo (2002-10-23 15:22) [1]> fs.WriteBuffer(pointer(ms)^,ms.Size);// пишу саму ms
это ошибка
CopyFrom используй
>fs.ReadBuffer(ms2 ,ii);///
И здесь тоже
← →
Демонов Е.В. (2002-10-23 15:25) [2]Здается мне что здесь что то не то
в
fs.WriteBuffer(pointer(ms)^,ms.Size);
и
fs.ReadBuffer(ms2 ,ii)
??? Хотя
← →
MBo (2002-10-23 15:26) [3]Кстати, TMemoryStream.LoadFromFile и SaveToFile
не будет достаточно?
← →
Skier (2002-10-23 15:28) [4]>Anatoly P
Если ты объяснишь конечную цель твоего кода, то
помогать тебе будет легче...
← →
Anatoly P (2002-10-23 16:17) [5]Cпасибо MBo © - заработало
>>Skier © - это для хранения нескольких RichText в одном файле
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c