Уважаемые форумчане, поделитесь ноу хау в таком вот вопросе,
К примеру у меня на форме есть контролы с которыми надо ассоциировать файлы, причем содержимое надо загружать в память и держать там в случае надобности(по минимуму запоминать короткое имя файла и содержимое файла) , а потом при необходимости копировать из памяти в сетевой протокол для отсылки по сети или наоборот получать из сети в память , или сброс на диск если это понадобится в другое место, как организовать такой контейнер ?
Работа с файлами
Модератор: Модераторы
- Nik
- энтузиаст
- Сообщения: 573
- Зарегистрирован: 03.02.2006 23:08:09
- Откуда: Киров
- Контактная информация:
2grigoreo
Если число файлов заранее известно, можно не заморачиваться с классами и сделать как-то так:
Если число файлов заранее известно, можно не заморачиваться с классами и сделать как-то так:
Код: Выделить всё
type
TMyFile=record
xName: string; // путь к файлу
PriceBase: string; // содержимое файла (можно TStringList использовать)
end;
var
MyFiles: array [0..30] of TMyFile;Nik писал(а):Если число файлов заранее известно, можно не заморачиваться с классами и сделать как-то так:
Как раз неизвестно допустим решил через клас пойти и хранить это все в TMemoryStream , чет с непревычки не могу одну вещь сделать...
У меня есть заполненый стрим вначале идет имя файла (т.е длина строки потом сама строка),потом содержимое(т.е все в одном стриме), так вот достать имя я со стрима смогу, а как отдельно сбросить тело файла на диск?
- Brainenjii
- энтузиаст
- Сообщения: 1351
- Зарегистрирован: 10.05.2007 00:04:46
Сохранить перед телом файла его размер Int64, считать его, создать файловый поток и загрузить его из MemoryStream. Я бы так делал ^_^
