Java提供了ImageIO类来读取和写入图像。要将图像转换为字节数组–
使用read()
ImageIO类的方法读取图像。
创建一个ByteArrayOutputStream对象。
使用write()
ImageIO类的方法将图像写入上面创建的ByteArrayOutputStream对象。
最后使用该toByteArray()
方法将ByteArrayOutputStream的内容转换为字节数组。
import java.io.ByteArrayOutputStream; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class ImageToByteArray { public static void main(String args[]) throws Exception{ BufferedImage bImage = ImageIO.read(new File("sample.jpg")); ByteArrayOutputStream bos = new ByteArrayOutputStream(); ImageIO.write(bImage, "jpg", bos ); byte [] data = bos.toByteArray(); } }