Thursday, July 11, 2013

Java - Bytes to Image & vice versa

package org.configurator.pdfgenerator.utils;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

import org.apache.xerces.impl.dv.util.Base64;
 
 
public class SimpleConvertImage {
 public static void main(String[] args) throws IOException{
  String dirName="D:\\";
  ByteArrayOutputStream baos=new ByteArrayOutputStream(1000);
  BufferedImage img=ImageIO.read(new File(dirName,"plot.png"));
  ImageIO.write(img, "png", baos);
  baos.flush();
 
  String base64String=Base64.encode(baos.toByteArray());
  baos.close();
 
  byte[] bytearray = Base64.decode(base64String);
 
  BufferedImage imag=ImageIO.read(new ByteArrayInputStream(bytearray));
  ImageIO.write(imag, "png", new File(dirName,"snap.png"));
 }
}

Or Specific Functions

/***
  * Image 2 Byte Array
  * @param imageFile
  * @return
  *   byte[]
  */
 public static byte[] Image2Bytes(String imageFile){
  ByteArrayOutputStream baos=new ByteArrayOutputStream(1000);
  BufferedImage img;
  try {
   img = ImageIO.read(new File(imageFile));
   ImageIO.write(img, "png", baos);
   baos.flush();
   baos.close();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  String base64String=Base64.encode(baos.toByteArray());
  return Base64.decode(base64String);
 }
 
 /****
  * Byte Array to Image
  * @param ImageBytesArray
  * @param filePathName
  * @return
  *   Image File
  */
 public static File Bytes2Image(byte[] ImageBytesArray,String filePathName){
  File imageFile = new File(filePathName);
  try {
   BufferedImage imag=ImageIO.read(new ByteArrayInputStream(ImageBytesArray));
   ImageIO.write(imag, "png", imageFile);
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return imageFile;
 }

Reference:

http://www.programcreek.com/2009/02/java-convert-image-to-byte-array-convert-byte-array-to-image/
http://stackoverflow.com/questions/3211156/how-to-convert-image-to-byte-array-in-java

Related Posts:

  • Business Analysis - Phân tích nghiệp vụ Kỹ năng phân tích - Điều kiện tiên quyết của nghề Phân tích nghiệp vụ Bạn đã bao giờ nghe nói đến nghề "Chuyên viên phân tích nghiệp vụ" - Business Analyst (BA)? Đó là nghề gì vậy? Bạn cần những kỹ năng nào để … Read More
  • Business Process Management Đối với mỗi doanh nghiệp, việc ký duyệt các văn bản nội bộ để đưa ra một quyết định sản xuất, kinh doanh, cung cấp dịch vụ hoặc đơn giản chỉ là một sự thay đổi đơn hàng, yêu cầu nguyên vật liệu, một quyết định nâng cấ… Read More
  • Manual update HTC One X to official Android OTA Make sure that the phone’s bootloader is unlocked and it has custom recovery (CWM) installed. HTC One X should be running firmware version 3.20.401.3 otherwise you will receive an error. Download HTC One X official Android 4… Read More
  • BPMN - UML Đánh giá các ngôn ngữ mô hình hóa quy trình nghiệp vụ và đề xuất việc sử dụng ngôn ngữ BPMN trong ngân hàng Hiện nay, có rất nhiều ngôn ngữ mô hình hoá được nghiên cứu và sử dụng trong thực tế. … Read More
  • Mobile - Unlock & Root HTC Phone A. UNLOCK BOOTLOADER. 1/ Tình hình Chung: - Do một số bạn còn mới sử dụng One X hay Android của HTC còn bỡ ngỡ với cách hướng dẫn Unlock Bootloader của HTC nên mình viết bài này để các bạn có thể thực hiện một cách đơn … Read More

0 comments:

Post a Comment