JavaRush /Java блог /Архив info.javarush /Помогите с задачей
Trifan
18 уровень
Москва

Помогите с задачей

Статья из группы Архив info.javarush
есть задание: Необходимо реализовать программу, которая, получив на вход изображение из исходного набора, присвоит верный номер класса (0 или 1) путем анализа графических данных. Входные данные — изображение в формате PNG или JPEG. Выходные данные — номер класса (1 или 0). Программа должна запускаться под управлением одной из операционных систем из списка — Windows (7, 8), Linux - Ubuntu 14.04 и выше. 1. я не понимаю как передать файл в программу, т.е. с адресом "C:\\1.png" он видит, а "C:\\1" нет, а формат как раз надо определить. 2. как собственно определить формат? вроде слышал что первые 8 байтов являются заголовком и у всех png одинаковые, но не пойму как это реализовать. Буду очень благодарен за помощь!
Комментарии (3)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
blacky Уровень 23
12 марта 2015
У каждого формата есть Magic number.
Например, у скомпилированного java класса магическим числом будет 0xCAFEBABE.
Люди выше дали годные ссылки — читай.
igor Уровень 25
11 марта 2015
1. У тебя нет, скорее всего, файла
C:\\1
вот он его и не видит.
Видимо в программу будет передаваться файл без расширения.
2. Определяется формат по маркерам, необходимо всего лишь прочитать про структуру файлов PNG и JPEG.
Значит необходимо считать необходимое количество байт и определить.