Преобразование нескольких изображений в байтовый массив

Я пытаюсь дать ответ как несколько байтов изображения массива в другое приложение.

Я получаю список изображений автомобилей из базы данных и преобразую их в байтовый массив.

ByteArrayInputStream instream = null;
ServletOutputStream out = null ;
for(Vehicle vehicle : vehicleList)
{
   byte[] imageInByte = null;
   VehicleImage vehicleImage=VehicleImagePeer.doSelectFirst(c.add(VehicleImagePeer.VEHICLE_ID, getId()));
   c.clear();
   String path = TaxiApp.getConfigValue("IMAGE.PATH")+vehicleImage.getPath();
   System.out.print(path);
   BufferedImage originalImage = ImageIO.read(new File(path));
   ImageIO.write(originalImage, "png", baos);
   imageInByte = baos.toByteArray();
   baos.close();

используя этот код, я конвертирую все изображения в массив байтов.

Как сейчас мне нужно дать ответ. я использовал этот код в ответ

out = response.getOutputStream();
response.setContentLength(imageInByte.length);
response.setCharacterEncoding(Charset.forName("UTF-8").name());
int bufferSize = response.getBufferSize();
byte[] buffer = new byte[bufferSize];
instream = new ByteArrayInputStream(imageInByte);
TaxiApp.logprintf("Total page size in bytes: %s and default response bufferSize in bytes: %s%n", new Object[] 
{
   Integer.valueOf(imageInByte.length), Integer.valueOf(bufferSize) 
});
int length = 0;
while ((length = instream.read(buffer, 0, bufferSize)) != -1)
{
out.write(buffer, 0, length);
out.flush();
}

Вот проблема для меня. Ответ может отправлять только первый байтовый массив изображений. но мне нужно отправить все изображения байтового массива... пожалуйста, решите эту проблему.

0 ответов

Другие вопросы по тегам