Java читает байтовый массив из PostgreSQL и записывает в файл изображения - PullRequest
0 голосов
/ 06 марта 2019

Мне нужно прочитать байтовый массив изображения из таблицы PostgreSQL, который выполняется как

byte[] fileBytes = resultsSet.getBytes(1);

Когда я пытаюсь записать его в файл изображения, он не открывается (неподдерживаемый тип файла).Ниже приведен код

FileOutputStream fos = new FileOutputStream("D:\\test.png"); 
fos.write(fileBytes);
fos.close();

1 Ответ

0 голосов
/ 06 марта 2019

Попробуйте этот метод, у меня сработало:

      InputStream in = new ByteArrayInputStream(rs.getBytes(1));
      BufferedImage bImageFromConvert = ImageIO.read(in);
                    if(null == bImageFromConvert){
                        throw new Exception("Invalid image");
                    }
                    OutputStream out = new FileOutputStream("e:/images/"+"test".jpg");

        ImageIO.write(bImageFromConvert, "png", out);
...