Java Image from Byte Array bytesToImage(byte[] imageBytes)

Here you can find the source of bytesToImage(byte[] imageBytes)

Description

bytes To Image

License

Open Source License

Declaration

public static Image bytesToImage(byte[] imageBytes) throws IOException 

Method Source Code

//package com.java2s;
/* The MIT License//www  .j  a v  a2  s .  co  m
 * 
 * Copyright (c) 2005 David Rice, Trevor Croft
 * 
 * Permission is hereby granted, free of charge, to any person 
 * obtaining a copy of this software and associated documentation files 
 * (the "Software"), to deal in the Software without restriction, 
 * including without limitation the rights to use, copy, modify, merge, 
 * publish, distribute, sublicense, and/or sell copies of the Software, 
 * and to permit persons to whom the Software is furnished to do so, 
 * subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be 
 * included in all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 
 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 
 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 
 * SOFTWARE.
 */

import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.Toolkit;

import java.io.ByteArrayInputStream;

import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.JPanel;

public class Main {
    public static Image bytesToImage(byte[] imageBytes) throws IOException {

        ByteArrayInputStream inStream = new ByteArrayInputStream(imageBytes);

        Image image = null;
        try {
            image = ImageIO.read(inStream);
        } catch (Exception e) {

            // Try the old fashioned way
            image = Toolkit.getDefaultToolkit().createImage(imageBytes);
            MediaTracker tracker = new MediaTracker(new JPanel());
            tracker.addImage(image, 0);
            try {
                tracker.waitForID(0);
            } catch (Exception e2) {
                // nothing to do
            }
        }

        return image;
    }
}

Related

  1. bytesToBImage(byte[] bytes)
  2. bytesToImage(byte[] imageBytes)
  3. bytesToImage(byte[] imageBytes)