Как узнать тип (расширение)картинки из массива байт?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
IvanSh
Новичок
Новичок
 
Сообщения: 25
Зарегистрирован: 20.03.2005 (Вс) 15:20
Откуда: Minsk

Как узнать тип (расширение)картинки из массива байт?

Сообщение IvanSh » 20.03.2005 (Вс) 18:47

Имею btData() в котором изображение находится. Всё хорошо, и в image картинку забросить можно, и в файл сохранить. Но как узнать тип, толи это jpg? толи bmp? (и т.д.)

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 20.03.2005 (Вс) 19:47

По заголовку
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

IvanSh
Новичок
Новичок
 
Сообщения: 25
Зарегистрирован: 20.03.2005 (Вс) 15:20
Откуда: Minsk

Сообщение IvanSh » 20.03.2005 (Вс) 19:58

а конкретнее в каких байтах?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 20.03.2005 (Вс) 20:02

В первых.
На wotsit.org сходить не ага?
Lasciate ogni speranza, voi ch'entrate.

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Сообщение GM » 21.03.2005 (Пн) 0:14

Имел, я дело с этим заголовками, часть уже на память знаю
Вот что припомнил:
JPEG - где то с ~ 10 байта сигнатура - "JFIF" без кавычек
BMP - первые два байта "BM"
GIF - первые 5 байт "GIF87"
PNG - 2,3,4 байт "PNG"
Все дальше не помню, щас посмотрю:
ico - в хексе 00 00 01 00 , незнаю сигнатура ли это, ну думаю подойдет
cur - в хексе 00 00 02 00 -"-
wmf - незнаю
Ух и понесло меня, не в тему, ну да ладно может кому то нужно:
RAR - Rar!
ZIP - PK
EXE - MZ(ZM, правда нигде не видел, просто помню с описания ехе), от Марка Зелински, если не ошибаюсь
الفيجوال بيسك الرابح

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 21.03.2005 (Пн) 0:35

Збиковски.

Это по крайней мере пятый способ переврать его фамилию, который я встречаю.
Изображение

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 21.03.2005 (Пн) 9:33

Чуть-чуть дополню пост GM.
У gif'ов первые 6 байт бывают GIF87a, GIF89a.

А вообще, с подобными запросами прямая дорога на www.wotsit.org (alibek уже упоминал)...

IvanSh
Новичок
Новичок
 
Сообщения: 25
Зарегистрирован: 20.03.2005 (Вс) 15:20
Откуда: Minsk

Сообщение IvanSh » 21.03.2005 (Пн) 19:21

интересно, а через CSLID нельзя получить расширение картинки?

IvanSh
Новичок
Новичок
 
Сообщения: 25
Зарегистрирован: 20.03.2005 (Вс) 15:20
Откуда: Minsk

Сообщение IvanSh » 21.03.2005 (Пн) 19:30

Amed писал(а):А вообще, с подобными запросами прямая дорога на www.wotsit.org (alibek уже упоминал)...


там же всё по ненашенски :? :) придётся идти за пивом, без пива туго придётся :)

кстати я тут просмотрел пару десятков файлов с разными расширениями и установил что первые два байта при одинаковых расширениях повторяются, а именно:
GIF = 71 73
BMP = 66 77
JPG = 255 216
WMF = 215 205
Наши люди лёгкими путями не идут!

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 21.03.2005 (Пн) 19:51

IvanSh писал(а):GIF = 71 73
BMP = 66 77
JPG = 255 216
WMF = 215 205


Код: Выделить всё
? chr(66)
'B
? chr(77)
'M


Мне кажется GM писал это уже :wink:
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

IvanSh
Новичок
Новичок
 
Сообщения: 25
Зарегистрирован: 20.03.2005 (Вс) 15:20
Откуда: Minsk

Сообщение IvanSh » 22.03.2005 (Вт) 9:29

KDima писал(а):Мне кажется GM писал это уже :wink:

да, но я имею ввиду первые два байта файла. Интересно это мне так повезло или они действительно зависят от формата
Наши люди лёгкими путями не идут!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18

    TopList