在Java中将字节数组转换为image(blob)
问题描述:
用于从字节数组到图像(即blob)的图像转换的代码.
The code for the image conversion from byte array to image i.e blob.
try
{
Blob image_vis = rs1.getBlob(10);
InputStream x=image_vis.getBinaryStream();
OutputStream out=new FileOutputStream(string_op);
byte[] bytes = string_op.getBytes();
String s=new String(bytes);
System.out.println(+s); //prints bytes for the string
ImageIcon icon_cap = new ImageIcon(string_op);
image_cap.setIcon(icon_cap); //prints nothing to Jlabel
//image_cap.setText(s); //prints a path of a image
}
我可以获取图像的路径,但是可以将其转换为图像格式,以便将其显示在表单上.请帮助我.
I am able to get path of an image, but I am anable to convert it into image format, so that it will display on a form. please help me.
答
尝试一下..
try
{
Blob image_vis = rs1.getBlob("blobColumn");
int blobLength = (int) image_vis.length();
byte[] bytes = image_vis.getBytes(1, blobLength);
image_vis.free();
final BufferedImage bufferedImage = ImageIO.read(new ByteArrayInputStream(bytes));
ImageIO.write(bufferedImage, "jpg", new File("ImagePath/ImageName.jpg"));
}
稍后您可以拾取图像.