Я хочу прочитать файл jp2 на Java с помощью JDELi (https://files.idrsolutions.com/maven/site/jdeli/apidocs/com/idrsolutions/image/jpeg2000/Jpeg2000Decoder.html)
try{
File f = new File("C:\\Users\\user\\Desktop\\b1.jp2"); //image file path
byte[] bytesArray = new byte[(int) f.length()];
FileInputStream fis = new FileInputStream(f);
fis.read(bytesArray); //read file into bytes[]
fis.close();
Jpeg2000Decoder decoder = new Jpeg2000Decoder();
BufferedImage decodedImage = decoder.read(bytesArray);
ImageIO.write(decodedImage, "png", new FileImageOutputStream(new File("C:\\Users\\user\\Desktop\\test.png")));
}catch(Exception e){
System.out.println("Error: "+e);
}
я получаю исключение нулевого указателя в этой строке здесь: decoder.read (bytesArray);
вот файл, который я пытаюсь загрузить: http://www.share-online.biz/dl/HB52UPBP8ZO
и вот ошибка:
Exception in thread "main" java.lang.NullPointerException
at com.idrsolutions.image.jpeg2000.TileParser.parseTile(TileParser.java:119)
at com.idrsolutions.image.jpeg2000.Jpeg2000Decoder.readCodeStream(Jpeg2000Decoder.java:445)
at com.idrsolutions.image.jpeg2000.Jpeg2000Decoder.decodeContiguousCodeStreamBoxes(Jpeg2000Decoder.java:297)
at com.idrsolutions.image.jpeg2000.Jpeg2000Decoder.read(Jpeg2000Decoder.java:61)
at test.testimagereader.main(testimagereader.java:36)
у кого-то есть идея?
Благодарность
Добро пожаловать в Stack Overflow. Пожалуйста, возьмите тур и посмотрите Как спросить. Затем предоставьте нам минимальный воспроизводимый пример, который может воспроизвести полученную вами ошибку.
старайтесь не закрывать FileInputStream сразу, т.е. до завершения обработки.
не закрытие потока не помогло. То же исключение все еще идет
Есть ли у вас новости о вашей проблеме? Почему вы не используете JAI (Java Advanced Imaging)?




Не могли бы вы вставить все сообщение об исключении и трассировку стека?