1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

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

Тема в разделе "Delphi - программирование", создана пользователем Leos, 5 фев 2006.

Статус темы:
Закрыта.
  1. Leos

    Leos Гость

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

    Barmutik Гость

    Репутация:
    0
    Скинуть за раз весь массив из памяти в файл...

    Сначала размер.. а потом зараз весь кусок памяти ...
     
  3. Leos

    Leos Гость

    Репутация:
    0
    А не могли бы Вы это по-подробнее пояснить?
     
  4. Barmutik

    Barmutik Гость

    Репутация:
    0
    Ну что-то типа такого ...

    Код:
     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;
     
  5. Leos

    Leos Гость

    Репутация:
    0
    Всё, теперь вроде разобрался. Спасибо!
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей