JavaでBufferedImageをbyte[]に変換するには?
多くの場合、イメージをデータベースに保存するために、BufferedImageをバイト配列に変換する必要があります。次のように変換する必要があります。
BufferedImage originalImage = ImageIO.read(new File("c:\\image\\mypic.jpg"));
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write( originalImage, "jpg", baos );
baos.flush();
byte[]imageInByte = baos.toByteArray();
baos.close();
例
このクラスは “c:¥¥image¥¥mypic.jpg”から画像をロードし、ImageIO.writeを使用してBufferedImageをByteArrayOutputStreamオブジェクトに書き込み、バイト配列に変換します。
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
/**
** @author mkyong
**
** /public class ImageTest {
public static void main(String[]args){
try{
BufferedImage originalImage =
ImageIO.read(new File("c:\\image\\mypic.jpg"));
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write( originalImage, "jpg", baos );
baos.flush();
byte[]imageInByte = baos.toByteArray();
baos.close();
}catch(IOException e){
System.out.println(e.getMessage());
}
}
}
bufferedimage
image
リンク://タグ/java/[java]