В моей программе была эта короткая подпрограмма, хорошо работающая на Java 7 и Windows 7 для чтения файлов изображений .jpeg.
Я обновил Java до версии 12 и теперь использую Windows 10 ион не может больше читать .jpeg файл.Я использую обычный .jpeg файл RGB 8 и 12 бит.Мне интересно, доступен ли новый класс сейчас, но я не могу найти информацию о нем.
/*
* Get image subroutine
*/
BufferedImage img = null;
try {
img = ImageIO.read(new File(InputFolder + name));
/*
* Get dimension subroutine
*/
int imagewidth = img.getWidth();
int imageheight = img.getHeight();
System.out.println(" retrieving width of " + name + " .... " + imagewidth);
System.out.println(" retriving height of " + name + " .... " + imageheight);
/*textArea1.append("\n retrieving width of "+name+" .... \n"+imagewidth);
textArea1.append("\n retriving height of "+name+" .... \n"+imageheight);*/
У меня будет исключение, говорящее «Ошибка файла, а не файл изображения..Aborted .. Все файлы могут быть открыты с помощью фоторедактора, такого как Photoshop.
Это новый код. Я всегда получал -1 для ширины и длины.
try {
MediaTracker mt = new MediaTracker(new JPanel());
Image img = Toolkit.getDefaultToolkit().getImage(InputFolder + name);
mt.addImage(img, 0);
System.out.println("Wait image to be load to retrieve info...");
mt.waitForAll();
System.out.println("Loaded");
/**
* Get dimension subroutine
*/
System.out.println(" Get Width & Height ");
int imagewidth = img.getWidth(this);
int imageheight = img.getHeight(this);