Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

Читаем файл Read(f1, Ch)   Найти похожие ветки 

 
Officeman   (2006-02-15 10:04) [0]

Читаем файл типа  GIF


var
ch:char;
begin
AssignFile(f1,"sam.gif");
Reset(f1);
...


записываю первые 20 знаков в переменную


 while not Eof(f1) do
 begin
     count:=count+1;
     Read(f1, Ch);
     s:=s+Ch;
   if count=20 then begin
     sx:=LVu.Items.Item[x-1].Caption+";"+(s)+";";
   end;
 end;
   CloseFile(f1);


Проблема в следующем. Возможно то что прочитали из файла?

  "GIF89a2чя @;60"

представить в другом виде?

Нужно чтобы не было там знаков:  ;   и   x


 
Digitman ©   (2006-02-15 10:08) [1]


> записываю первые 20 знаков в переменную


Почему именно 20 ? почему не 5 или не 200 ?
Что вообще ты ожидал увидеть среди этих 20-ти знаков ?


 
Digitman ©   (2006-02-15 10:18) [2]

http://home.onego.ru/~chiezo/gif.htm


 
Officeman   (2006-02-15 10:20) [3]

to Digitman

эти 20 или 100 знаков будут являтся идентификатором самого файла картинки.
для удачной загрузки из save файла. т.к. имена файлов каталога меняются при каждом обновлении базы. например файл назывался 10.gif, после обновления он будет называтся 15.gif или 23.gif.

Как можно перевести нужную мне строку с бинарный вид??? 0000111101 =)
или может посоветуете метод по умнее!

с Уважением.


 
Officeman   (2006-02-15 10:21) [4]

спс. почитаю.


 
Digitman ©   (2006-02-15 10:28) [5]


> идентификатором самого файла картинки


Иными словами, тебе нужно однозначно идентифицировать содержимое файла картинки вне зависимости от имени этого файла ?


> для удачной загрузки из save файла


Как связан этот самый "идентификатор" с удачностью или неудачностью "загрузки" ? Поясни ..


 
Vlad ©   (2006-02-15 10:33) [6]


> Officeman   (15.02.06 10:20) [3]


> Как можно перевести нужную мне строку с бинарный вид???
> 0000111101 =)

зачем сразу в бинарный? Можно в 16-ричное представление, тем более есть стандартная ф-ция IntToHex.
А можно просто считать контрольную сумму или хэш


 
Officeman   (2006-02-15 10:44) [7]

to Digitman
да, вы всё правильно понимаете.

to Vlad
Спасибо за мысль. Попробую прикрутить:  IntToHex

и ещё
Вы говорите о контрольной сумме байт?
и что такое хэш? в двух словах.

с Уважением.


 
Digitman ©   (2006-02-15 10:56) [8]

http://ru.wikipedia.org/wiki/%D0%A5%D1%8D%D1%88-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F


 
Vlad ©   (2006-02-15 10:57) [9]


> Officeman   (15.02.06 10:44) [7]


> Вы говорите о контрольной сумме байт?

Я говорю о контрольной сумме файла (картинки), CRC32, например. Но фактически, конечно это относится к байтам :-))
Хэш сумма близка по смыслу к контрольной сумме

готовые коды можешь посмотреть тут
http://kladovka.net.ru/delphibase/?action=viewtopic&topic=mathcode

а более подробную информацию легко найти поисковиком :-)


 
Leonid Troyanovsky ©   (2006-02-15 11:01) [10]


> Vlad ©   (15.02.06 10:33) [6]

>  тем более есть стандартная ф-ция IntToHex.


BinToHex

--
Regards, LVT.


 
Officeman   (2006-02-15 15:44) [11]

to Vlad  ::::::::  

спасибо. Респект. Хэш-суммы рулят.  Всё получилось. абалдеть. ну просто нет слов.



Страницы: 1 вся ветка

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.055 c
2-1139827479
ЧихПых )) ЫЫ
2006-02-13 13:44
2006.03.05
Максимальное значение из ADOQuery


2-1139870282
Alsan
2006-02-14 01:38
2006.03.05
Как скопировать папку с файлами в Delphi ???


1-1138691166
ORMADA
2006-01-31 10:06
2006.03.05
MainMenu+MDI


15-1139579838
tradakad
2006-02-10 16:57
2006.03.05
компиляция проекта без использования IDE


3-1132746462
Frozzen
2005-11-23 14:47
2006.03.05
Как в ставить запись в аксесс таблицу через АДО