Как я писал в названии, я хотел бы понять, как создать несколько изображений из массива, содержащего байты. Это то, что было написано до сих порСоздайте набор файлов изображений из байт-матрицы
BufferedImage arrayImage[] = new BufferedImage [depthV];
int arrayIndex = 0;
for (int z = 0; z < depthV; z++)
{
byte byteToImg[] = new byte [widthV*heightV];
for (int x = 0; x < widthV; x++)
{
for (int y = 0; y < heightV; y++)
{
byteToImg[x + y] = data3D[0][z][y][x];
}
}
ByteArrayInputStream byteIn = new ByteArrayInputStream(byteToImg);
BufferedImage finalImage= null;
try {
finalImage = ImageIO.read(byteIn);
} catch (IOException e) {
e.printStackTrace();
}
arrayImage[arrayIndex]=finalImage;
arrayIndex++;
}
for (int i = 0; i < arrayImage.length; i++)
{
File outputfile = new File("./Resources/tmp/image"+i+".jpg");
try {
ImageIO.write(arrayImage[i], "jpg", outputfile);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Функция Java заканчивается java.lang.IllegalArgumentException: изображения == NULL! Какая у меня ошибка? Как я могу избежать этой проблемы? Есть лучший способ сделать это?
Заполните полное исключение. Особенно важно здесь, в какой строке было исключено исключение. – mhlz
Я не могу опубликовать все исключения, это слишком долго. Существует заинтересованная строка кода: \t \t \t \t \t \t ImageIO.write (arrayImage [я], "JPG", выходной_файл); –