ОБСУЖДЕНИЕ

сохранение двумерного динамического массива

4 ответов 7,4 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Статус
Закрыто для дальнейших ответов.
Автор темы
Есть такая проблема:
Есть тип
TRealArray = array of real;
и тип:
TTwoDRealArray = array of TRealArray;
Второй представляет двумерный динамический массив вещественных чисел.
Во время выполнения программы он заполняется и приобретает размет порядка 500x500 (может и другой). Так вот, его необходимо сохранить в файл (как можно быстрее). Может кто-нибудь посоветует как лучше это сделать? не выводить же в его в цикле?
 
Скинуть за раз весь массив из памяти в файл...

Сначала размер.. а потом зараз весь кусок памяти ...
 
А не могли бы Вы это по-подробнее пояснить?
 
Ну что-то типа такого ...

Код:
 TDoubleArray = array of Double;

var
AArray: TDoubleArray;
AStream: TMemoryStream;
ALength: Integer;
begin
AStream := TMemoryStream.Create;
try
 SetLength(AArray, 10);
 ....
 ALength := Length(AArray);
 AStream.WriteBuffer(ALength, SizeOf(ALength));
 AStream.WriteBuffer(AArray[0], SizeOf(Double) * ALength);
 AStream.SaveToFile(....);
finally
 AStream.Free;
end;
end;
 
Всё, теперь вроде разобрался. Спасибо!
 
Статус
Закрыто для дальнейших ответов.