Главная страница
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.043 c
6-1132056395
Ega23
2005-11-15 15:06
2006.03.05
Идентификация компа


2-1140010647
ButtonExplorer
2006-02-15 16:37
2006.03.05
Правильно ли так проверять, создан ли компонент?


15-1139839929
kaZaNoVa
2006-02-13 17:12
2006.03.05
Упаковщики EXE-файлов


15-1139469297
syte_ser78
2006-02-09 10:14
2006.03.05
биос для мп3 плейера


4-1134593589
Free0n
2005-12-14 23:53
2006.03.05
Работа с реестром