Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Правильное чтение файла, Запись файла в переменную.  
V
    Опции темы
1Age
Дата 26.1.2015, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 13.1.2015

Репутация: нет
Всего: нет



Здравствуйте уважаемые форумчани! 
Собственно вопрос таков . Как правильно читать файлы так , что бы потом можно было его воссоздать ? 
К примеру , есть у меня тот же JPG , я его прочитываю , он записывается в переменную ... Потом что бы я смог воссоздать этот файл JPG и что бы он работал))
Интересует не только JPG , а любого расширения файлы. 
Погуглив и почитав , я понял надо как то читать файл побайтово?
Гуру кодинга , подскажите пожалуйста , заранее большое спасибо!

Это сообщение отредактировал(а) 1Age - 26.1.2015, 22:03
PM MAIL   Вверх
kami
Дата 27.1.2015, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Цитата(1Age @  26.1.2015,  22:01 Найти цитируемый пост)
 Потом что бы я смог воссоздать этот файл JPG и что бы он работал))

Что понимается под "воссоздать"? сделать копию файла? 
и что понимается под "работал"? Можно на примере того же jpeg 

Это сообщение отредактировал(а) kami - 27.1.2015, 00:37
PM MAIL WWW   Вверх
1Age
Дата 27.1.2015, 01:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 13.1.2015

Репутация: нет
Всего: нет



К примеру , у картинки есть код , как бы внутри файла . Как мне взять этот самый код , и поместить в переменную . 
Что бы потом я мог создать файл к примеру "1.jpg" и запихнул в него этот код . И то есть воуля , картинка работает. 
p.s. Сразу скажу. Пробовал просто взять все содержимое файла и запихнуть в другой файл , не выходило. Такая штука походу только с текстовыми файлами работает.
Как же правильно все таки?

Цитата

тут код , взятие кода картинки хД.

AssignFile(myFile, '1.jpg');
ReWrite(myFile);
WriteLn(myFile, s); - s переменная , с кодом картинки 1.jpg
 CloseFile(myFile);


Это сообщение отредактировал(а) 1Age - 27.1.2015, 07:28
PM MAIL   Вверх
Illusion Dolphin
Дата 27.1.2015, 08:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 5
Всего: 63



Цитата

AssignFile(myFile, '1.jpg');
ReWrite(myFile);
WriteLn(myFile, s); - s переменная , с кодом картинки 1.jpg
 CloseFile(myFile);

Откопали на кладбище динозавров?
Записать в переменную любой файл нельзя, т.к. они бывают очень большие и могут не влезть в память.
Если вопрос про небольшие файлы, то сделайте через TFileStream -> TMemoryStream 


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
kami
Дата 27.1.2015, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Цитата(1Age @  27.1.2015,  01:34 Найти цитируемый пост)
 И то есть воуля , картинка работает. 

{$зануда mode on} картинка не работает. Картинку могут показывать какие-либо программы. Вот они (программы) работают, а картинки - не работают, не барское это дело {$зануда mode off}
Код

var
  SourceStream, DestStream: TStream;
begin
  SourceStream:=TFileStream.Create('имяфайла', fmOpenRead);
  try
    DestStream:=TFileStream.Create('имяновогофайла', fmCreate);
    try
      DestStream.CopyFrom(SourceStream, 0);
    finally
      DestStream.Free;
    end;
  finally
    SourceStream.Free;
  end;

PM MAIL WWW   Вверх
1Age
Дата 27.1.2015, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 13.1.2015

Репутация: нет
Всего: нет



Спасибо Делфин за наводку.

@kami , Уже нашел это, раньше))

Цитата

procedure TForm1.Button3Click(Sender: TObject);
var
  src, dest: TFileStream;
begin
  src := TFileStream.Create('sample.txt', fmOpenRead);
  try
    dest := TFileStream.Create('dest.txt', fmCreate);
    try
      // копирование файла
      dest.CopyFrom(src, src.Size)
    finally
      dest.Free;
    end;  // завершение конструкции try (dest)
  finally
    src.Free;
  end; // завершение конструкции try (src)
end;


Прям то что нужно , спасибо всем.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

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

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0427 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.