java将图片转byte存入数据库_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 {
/**
* @Description: 图片转化成base64字符串
* @param: path
* @Return:
*/
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);
}
/**
* @Description: base64字符串转化成图片
* @param: imgStr
* @Return:
*/
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
{
if(b[i]<0)
{
//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片
String imagePath= Config.getUploadPhysicalPath();
//System.currentTimeMillis()
//新生成的图片
String imgFilePath = imagePath+photoname;
OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
return true;
}
catch (Exception e)
{
return false;
}
}
}
以上这篇Java将byte[]转图片存储到本地的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持自学编程网。
java将图片转byte存入数据库_Java将byte[]转图片存储到本地的案例相关推荐
- java byte 图片_Java将byte[]转图片存储到本地的案例
Java中,将字节数组转成图片的有很多种方式,今天在这里记录其中一种,方便以后查询,也可以提供给没有接触的童鞋做一个参考. 首先是将图片转成字节数组 import sun.misc.BASE64Enc ...
- java 捕获异常并存入数据库_java异常处理,报异常的话怎么处理对象值,并持久化到数据库中...
展开全部 //没看到有人回e68a843231313335323631343130323136353331333365646233答你,我还没学到框架,不知道那个是不是可以很便捷操作你说的这样过程 / ...
- 读取ppt并存入数据库_Java解析Excel文件并把数据存入数据库
前段时间做一个小项目,为了同时存储多条数据,其中有一个功能是解析Excel并把其中的数据存入对应数据库中.花了两天时间,不过一天多是因为用了"upload"关键字作为URL从而导致 ...
- java读取Excel文档 + 存入数据库
序 在做项目的时候,我们有时想要读取Excel类型的文档,把表格里面的数据进行处理,比如把成绩Excel文档存储到数据库对应的表.而这时却不知道该如何操作,接下来我将讲解这个流程.以下面的数据为例 总 ...
- java图片保存文件到数据库_java保存图片内容到数据库
本文使用mysql数据库举例插入图片到数据库和从数据库取出图片在页面显示: 一.建表 创建一个测试保存图片的表 create table t_save_img( name varchar(200), ...
- C#将照片或图片转化为byte[]存入数据库,从数据库中读照片
1. 写入数据库: public static byte[] GetBytesByImage(PictureBox pb) { byte[] photo_byte= null; if (!pb.Ima ...
- java 数组存入数据库_Java中关于二维数组的理解与使用
今天练习的时候遇到一个题目,题目需求是这样的: 需求说明: 根据3个班各5名学生某门课程的成绩,正确使用二维数组计算如图所示3个班各自的总成绩 分析: 要实现这个功能需要存储两个信息: 一个是班级信息 ...
- Java实现图片上传到数据库,并把上传的图片读取出来
技术选型 技术选型: SpringBoot Vue技术方案: 采用数据库存储图片的方式,后端接口返回图片的base64流,插入数据库前对图片进行加密,接口查询进行解密. 实现 数据库 字段:head_ ...
- Java写入大字符串到oracle数据库_java程序如何提高oracle百万级数据的insert效率
业务:需要从一个数据库查询百万级数据,在java程序中插入到另一个oracle数据库中 代码: private final int persize = 1000; /** * 推送数据-流程 * @p ...
最新文章
- Debian、Ubuntu安装源配置文件说明
- android通话记录列表apk,android打电话,发短信,获取通讯录、通话记录、短信记录...
- decimal函数python_decimal数据类型
- python对excel表统计视频教程_Python实现对excel文件列表值进行统计的方法
- 多规则策略如何筛选|视频版
- C#中Panel控件和GroupBox控件(未完成)
- 西电2021计算机考研大纲,2021年西安电子科技大学硕士研究生833计算机学科专业基础综合考试大纲...
- Color颜色——颜色模式、颜色基本特征、网页颜色以及其代码
- 群晖 nas docker 时间校准
- TCP端口映射与转发软件(TCP Mapping)简介
- java保龄球计分_自己写的java保龄球记分
- java网上图书商城_java网上图书商城(8)订单模块3
- 流,对话,会话,连接等一些基本概念
- 歌手详情页:下拉方大歌手图片
- 4A(统一安全管控平台)解析
- ffmpeg.dll丢失怎么办-ffmpeg.dll修复工具下载
- STM32F407多路串口通信进行数据收发
- dumpbin工具的使用(配图)
- omni_usdt钱包文件keypoolsize是否持续为100个地址测试
- Dalvik虚拟机详解(上)
热门文章
- C#获取屏幕大小的“简单整理”。。
- python RSA加密、解密、签名
- CentOS7 shell脚本安装jdk
- 用php实现随机点名,使用javascript做的一个随机点名程序
- mysql怎么修改表中的文字_mysql表中怎么修改字段?
- OpenGL Sharders(着色器) 入门
- 判断linux进程是否存在
- 计算机基础知识复习资料,计算机基础知识复习资料
- android 评论的展开功能,Android开发实现ListView点击展开收起效果示例
- java借口案例实现_java实现接口的典型案例