Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2009, 15:44   #1
Олвин
Экспериментатор
Форумчанин
 
Аватар для Олвин
 
Регистрация: 16.04.2008
Сообщений: 218
По умолчанию LoadFromStream из оперативной памяти - возможно ли?

Вот хотелось бы расшифровать файл (загрузив его в оперативную память) и отправить его в Memo, не создавая при этом временных файлов. Можно, конечно по одному символу добавлять вот так:
Код:
{...Здесь считывается из памяти символ в переменную ch...}
Memo1.Text := Memo1.Text + ch;
Но это долго. А LoadFromStream для этого не годится? Или ещё что-то? А если вместо Memo будет TextBrowser? Заранее спасибо.
Для создания сложных вещей не нужны сложные интерфейсы. (с) Линус Торвальдс
Олвин вне форума Ответить с цитированием
Старый 17.04.2009, 16:12   #2
koma_grusha
Редкий обитатель
Форумчанин
 
Аватар для koma_grusha
 
Регистрация: 08.04.2009
Сообщений: 170
Подмигивание

попробуй по образцу

Код:
procedure WorkWithStream
var
    strm: TMemoryStream; //можно TStream
begin
    try
        strm := nil;
        strm := TMemoryStream.Create;
        strm.LoadFromFile(FileName);  //выбираешь файл
        ...   //тут делай с потоком все что хочешь
    finally
        strm.Free;
    end;
end;
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный (Мишель Монтень)
koma_grusha вне форума Ответить с цитированием
Старый 17.04.2009, 16:15   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

LoadFromStream как параметр передается любой потомок TStream...если я правильно понял вопрос...то конечно можно...тебе нужно загрузить данные в TMemoryStream потом грузить в Мемо(не забудь перед этим сместить позицию в потоке на начало)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 17.04.2009, 16:23   #4
koma_grusha
Редкий обитатель
Форумчанин
 
Аватар для koma_grusha
 
Регистрация: 08.04.2009
Сообщений: 170
По умолчанию

а чтобы сместить позицию на начало, надо

Код:
strm.Seek(0, soFromBeginning);
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный (Мишель Монтень)
koma_grusha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Размер доступной оперативной памяти xakzona Win Api 1 27.02.2009 12:25
Восстановить из оперативной памяти Problemaumenya Помощь студентам 1 08.05.2008 23:01
Текстирование оперативной памяти arxipmen Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 23.11.2007 14:30
Кол-во оперативной памяти Квэнди Win Api 2 25.07.2007 13:27
выделение оперативной памяти Alar Общие вопросы Delphi 0 29.10.2006 21:56