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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2011, 21:52   #1
AET
Пользователь
 
Регистрация: 29.02.2008
Сообщений: 60
По умолчанию TMemoryStream

Код:
procedure CompressFile(const sFileIn : string; const sFileOut : string; const Level : TCompLevel = clDefault);
var
 inStream, outStream, ms: TMemoryStream;
 i,s :integer;
begin
 inStream:=TMemoryStream.Create;
 outStream:=TMemoryStream.Create;
 try
  inStream.LoadFromFile(sFileIn);
   try
    CopyFrom(inStream, inStream.Size);
   finally
    Free;
   end;
   for i := 1 to Length(s) do  begin
  outStream.Read(s[i], 1);
подскажит считываю файл в память и ситываю по одному из памяти хотел произвести шифрования. для шифрования использую константу в виде массива таблиц вот пример
Код:
const
key1: array[1..64] of Byte =  (
 $D5, $EE, $74, $29, $B3, $25, $34, $B8, $13, $56,
 $37, $84, $1E, $24, $21, $17, $90, $71, $DA, $7D,
 $D6, $80, $D1, $6D, $36, $69, $6B, $8F, $C4, $C6,
 $72, $EF, $40, $12, $4C, $E9, $9E, $CF, $58, $4A,
 $F2, $84, $AD, $C4, $4D, $9A, $44, $28, $61, $1E,
 $67, $4F, $C0, $4B, $C9, $8D, $6A, $6A, $66, $4C,
 $85, $E1, $85, $9F
 );
если значения совподают то записываем адресс массива

Код:
   outStream.SaveToFile(sFileOut);
   end;
  finally
   outStream.Free;
   inStream.Free;
  end;
end;
AET вне форума Ответить с цитированием
Старый 07.07.2011, 22:02   #2
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Привет. Попробуем разобраться. Как ты сравнение делаешь?

Последний раз редактировалось Aliens_wolfs; 07.07.2011 в 22:40.
Aliens_wolfs вне форума Ответить с цитированием
Старый 08.07.2011, 08:38   #3
AET
Пользователь
 
Регистрация: 29.02.2008
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
Привет. Попробуем разобраться. Как ты сравнение делаешь?
привет вот какраз и думаю как это зделать

Код:
procedure CompressFile(const sFileIn : string; const sFileOut : string; const Level : TCompLevel = clDefault);
var
 inStream, outStream, ms: TMemoryStream;
 i,s,a :integer;
 b: byte;
begin
 inStream:=TMemoryStream.Create;
 outStream:=TMemoryStream.Create;
 try
  inStream.LoadFromFile(sFileIn);
    try
    CopyFrom(inStream, inStream.Size);
   finally
    Free;
   end;
   for i := 1 to outStream.Size do  begin
  outStream.Read(b, 1);
  for s := 1 to 256 do
  while b <> key2[s] do begin
    inc(s);
  end;


   outStream.SaveToFile(sFileOut);
   end;
  finally
   outStream.Free;
   inStream.Free;
  end;
end;
как теперь результат записать в буфер

Последний раз редактировалось Stilet; 08.07.2011 в 20:09.
AET вне форума Ответить с цитированием
Старый 08.07.2011, 13:54   #4
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Так тебе зашифровать или сжать файл нужно?
Aliens_wolfs вне форума Ответить с цитированием
Старый 08.07.2011, 14:23   #5
AET
Пользователь
 
Регистрация: 29.02.2008
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
Так тебе зашифровать или сжать файл нужно?
зашифровать. в обшем масив из 256 символов и сравниваеш между символом считоного файла и масива как только они совподают записываем адрес из масива до совпадени данного символо

Последний раз редактировалось AET; 08.07.2011 в 14:26.
AET вне форума Ответить с цитированием
Старый 08.07.2011, 19:00   #6
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

А расшифровываешь ты как?

Последний раз редактировалось Aliens_wolfs; 08.07.2011 в 19:59.
Aliens_wolfs вне форума Ответить с цитированием
Старый 09.07.2011, 07:05   #7
AET
Пользователь
 
Регистрация: 29.02.2008
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
А расшифровываешь ты как?
считываешь байт из зашифрованого файла и это будет адресом в таблисе и записываеш уже значение с таблицыв расшифроваемый файл и все я его зделал но чуть по другому с старым методом но при зашифровке и расшифровке уходит много времени вот хотел переделать народ подскажите как дальше быть
AET вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
string и TMemoryStream xrob Общие вопросы Delphi 10 22.05.2011 14:07
TMemoField > TMemoryStream Gulik БД в Delphi 2 01.05.2011 22:19
ошибка с TMemoryStream Ecosasha Общие вопросы Delphi 3 25.03.2011 12:57
TMemoryStream Владимир1988 Помощь студентам 0 13.02.2010 13:04