栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java将byte[]转图片存储到本地的案例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java将byte[]转图片存储到本地的案例

Java中,将字节数组转成图片的有很多种方式,今天在这里记录其中一种,方便以后查询,也可以提供给没有接触的童鞋做一个参考。

首先是将图片转成字节数组

import sun.misc.base64Encoder;
import java.io.*;

// 传入图片路径,获取图片
FileInputStream fis = new FileInputStream("/Users/curry/error.png");
BufferedInputStream bis = new BufferedInputStream(fis);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buff = new byte[1024];
int len = 0;
while ((len = fis.read(buff)) != -1) {
  bos.write(buff, 0, len);
}
// 得到图片的字节数组
byte[] result = bos.toByteArray();
// 将数组转为字符串
base64Encoder encoder = new base64Encoder();
String str = encoder.encode(result).trim();

将数组转为图片

import sun.misc.base64Decoder;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

base64Decoder decoder = new base64Decoder();
byte[] imgbyte = decoder.decodeBuffer("刚刚将字节数组转成的字符串");
OutputStream os = new FileOutputStream("/Users/curry/text.png");
os.write(imgbyte, 0, imgbyte.length);
os.flush();
os.close();

补充知识:java将图片转化为base64和base64转化为图片编码并保存在本地

我就废话不多说了,大家还是直接看代码吧~

public class base64Convert {

  
  public static String GetImageStr(String path)
  {
    //将图片文件转化为字节数组字符串,并对其进行base64编码处理
    //待处理的图片
    String imgFile = path;
    InputStream in = null;
    byte[] data = null;
    //读取图片字节数组
    try
    {
      in = new FileInputStream(imgFile);
      data = new byte[in.available()];
      in.read(data);
      in.close();
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
    //对字节数组base64编码
    base64Encoder encoder = new base64Encoder();
    //返回base64编码过的字节数组字符串
    return encoder.encode(data);
  }
  
  public static boolean GenerateImage(String imgStr,String photoname)
  {
    //对字节数组字符串进行base64解码并生成图片
    //图像数据为空
    if (imgStr == null)
      return false;

    base64Decoder decoder = new base64Decoder();
    try
    {
      //base64解码
      byte[] b = decoder.decodeBuffer(imgStr);
      for(int i=0;i

以上这篇Java将byte[]转图片存储到本地的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/131184.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号