Запись массива на диск
Falk0ner, вс, 06/07/2008 - 15:34.
и TBlobField имеет имя MyBlobField. TMyRec назван как MyRec. Для копирования содержимого MyRec в MyBlobField необходимо сделать следующее:
Есть другой путь:
Скажем, ваша структура данных выглядит следующим образом:
type
TMyRec = record
SomeField: Integer;
SomeOtherField: Double;
TheRest: array[0..99] of Single;
end;
TMyRec = record
SomeField: Integer;
SomeOtherField: Double;
TheRest: array[0..99] of Single;
end;
и TBlobField имеет имя MyBlobField. TMyRec назван как MyRec. Для копирования содержимого MyRec в MyBlobField необходимо сделать следующее:
var
Stream: TBlobStream;
begin
Stream := TBlobStream.Create(MyBlobField, bmWrite);
Stream.Write(MyRec, SizeOf(MyRec));
Stream.Free;
end;
Stream: TBlobStream;
begin
Stream := TBlobStream.Create(MyBlobField, bmWrite);
Stream.Write(MyRec, SizeOf(MyRec));
Stream.Free;
end;
Есть другой путь:
var
Stream: TBlobStream;
begin
Stream := TBlobStream.Create(MyBlobField, bmRead);
Stream.Read(MyRec, SizeOf(MyRec));
Stream.Free;
end;
Stream: TBlobStream;
begin
Stream := TBlobStream.Create(MyBlobField, bmRead);
Stream.Read(MyRec, SizeOf(MyRec));
Stream.Free;
end;
- Steve Schafer
Взято из Советов по Delphi от Валентина Озерова
Сборник Kuliba
type
TCharArray = array[500] of Char;
procedure WriteToFile(var aArray: TCharArray; sFileName: string); {Примечание:
Объявление массива как параметр Var позволяет передавать только ссылку на массив,
а не копировать его целиком в стек, если же вам нужна безопасная работа с массивом,
то вам не следует передавать его как var-параметр. }
var
nArrayIndex: Word;
fFileHandle: TextFile;
begin
AssignFile(fFileHandle, sFileName);
Rewrite(fFileHandle);
for nArrayIndex := 1 to 500 do
begin
Write(fFileHandle, aArray[nArrayIndex]);
end;
CloseFile(fFileHandle);
end; {end Procedure, WriteToFile()}
http://delphiworld.narod.ru/
DelphiWorld 6.0
TCharArray = array[500] of Char;
procedure WriteToFile(var aArray: TCharArray; sFileName: string); {Примечание:
Объявление массива как параметр Var позволяет передавать только ссылку на массив,
а не копировать его целиком в стек, если же вам нужна безопасная работа с массивом,
то вам не следует передавать его как var-параметр. }
var
nArrayIndex: Word;
fFileHandle: TextFile;
begin
AssignFile(fFileHandle, sFileName);
Rewrite(fFileHandle);
for nArrayIndex := 1 to 500 do
begin
Write(fFileHandle, aArray[nArrayIndex]);
end;
CloseFile(fFileHandle);
end; {end Procedure, WriteToFile()}
Отправить комментарий