1import java.awt.image.BufferedImage; 2import java.io.ByteArrayInputStream; 3import java.io.ByteArrayOutputStream; 4import java.io.File; 5import java.io.IOException; 6 7import javax.imageio.ImageIO; 8 9import sun.misc.BASE64Decoder; 10import sun.misc.BASE64Encoder; 11 12public class TestImageBinary { 13 static BASE64Encoder encoder = new sun.misc.BASE64Encoder(); 14 static BASE64Decoder decoder = new sun.misc.BASE64Decoder(); 15 16 public static void main(String[] args) { 17 System.out.println(getImageBinary()); 18 19 base64StringToImage(getImageBinary()); 20 } 21 22 static String getImageBinary(){ 23 File f = new File("c://20090709442.jpg"); 24 BufferedImage bi; 25 try { 26 bi = ImageIO.read(f); 27 ByteArrayOutputStream baos = new ByteArrayOutputStream(); 28 ImageIO.write(bi, "jpg", baos); 29 byte[] bytes = baos.toByteArray(); 30 31 return encoder.encodeBuffer(bytes).trim(); 32 } catch (IOException e) { 33 e.printStackTrace(); 34 } 35 return null; 36 } 37 38 static void base64StringToImage(String base64String){ 39 try { 40 byte[] bytes1 = decoder.decodeBuffer(base64String); 41 42 ByteArrayInputStream bais = new ByteArrayInputStream(bytes1); 43 BufferedImage bi1 =ImageIO.read(bais); 44 File w2 = new File("c://QQ.bmp");//可以是jpg,png,gif格式 45 ImageIO.write(bi1, "jpg", w2);//不管输出什么格式图片,此处不需改动 46 } catch (IOException e) { 47 e.printStackTrace(); 48 } 49 } 50 51}
Java 将图片转二进制再将二进制转成图片
Wesley13
2021-10-11
1311 0 0
点赞
收藏
评论区
加载中...