Звучит просто так? Используйте
ImageIO.read(new ByteArrayInputStream(bytes));
Вот морщина. По какой-то причине он обнаруживает jpeg как bmp, и это первый ImageReader, возвращаемый при вызове
ImageInputStream iis = ImageIO.createImageInputStream(new ByteArrayInputStream(bytes));
Iterator<ImageReader> readers=ImageIO.getImageReaders(iis);
Это приведет к повреждению изображения. Есть ли способ рассказать через java, не глядя прямо на байты для заголовка, и не удается ли кому-нибудь узнать хорошую ссылку для заголовков байтов для разных изображений?
Просто позвольте вам, ребята, знать, что я все еще работаю над этим. Я дам вам знать, если/когда у меня будет ответ. Я благодарю всех вас за ваши ответы.