![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый день. Проблема следующая:
Хочу объединить 3 TMemoryStream, сохранить, загрузить и разделить. Что я делаю Гружу в стримы информацию из memo, затем объединяю и на этом моменте получаю кучу ошибок вот то что сделал сейчас Код:
private AStream, BStream, CStream,ResultStream: TMemoryStream; procedure CompressFiles(ResStream: TMemoryStream); procedure StringToStream(const AString: string; Stream: TMemoryStream); begin Stream:=TMemoryStream.Create; Stream.Write(AString[1], Length(AString)); end; procedure TForm1.CompressStream(ResStream: TMemoryStream); var outfile: TMemoryStream; compr : TMemoryStream; i,l,b : Integer; s : String; begin outFile := TMemoryStream.Create; try { отмечаем количество файлов } l := 3; outfile.Write(l,SizeOf(l)); s := 'AStream'; l := Length(s); outfile.Write(l,SizeOf(l)); outfile.Write(s[1],l); { размер стрима } l := AStream.Size; outfile.Write(l,SizeOf(l)); {упаковываем файл и сохраняем во временный файл} outfile.LoadFromStream(AStream); // outfile.SaveToFile('mestream'); AStream.Free; // finally outfile.Free; end; end; procedure TForm1.Button1Click(Sender: TObject); begin StringToStream(memo1.Text, AStream); StringToStream(memo2.Text, BStream); StringToStream(memo3.Text, CStream); Button2.Enabled:=true; Button3.Enabled:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin CompressStream(ResultStream); end; Уже 3 раз начинаю писать этот код и все время натыкаюсь на проблемы, кто может подсказать что не так и как это можно сделать(и если не сложно помочь с исходником)? Последний раз редактировалось Virus191288, 12.05.2014 в 19:29. |