Java 图片与byte数组互相转换实例
发布时间 - 2026-01-10 23:08:16 点击率:次实例如下:
//图片到byte数组
public byte[] image2byte(String path){
byte[] data = null;
FileImageInputStream input = null;
try {
input = new FileImageInputStream(new File(path));
ByteArrayOutputStream output = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
int numBytesRead = 0;
while ((numBytesRead = input.read(buf)) != -1) {
output.write(buf, 0, numBytesRead);
}
data = output.toByteArray();
output.close();
input.close();
}
catch (FileNotFoundException ex1) {
ex1.printStackTrace();
}
catch (IOException ex1) {
ex1.printStackTrace();
}
return data;
}
//byte数组到图片
public void byte2image(byte[] data,String path){
if(data.length<3||path.equals("")) return;
try{
FileImageOutputStream imageOutput = new FileImageOutputStream(new File(path));
imageOutput.write(data, 0, data.length);
imageOutput.close();
System.out.println("Make Picture success,Please find image in " + path);
} catch(Exception ex) {
System.out.println("Exception: " + ex);
ex.printStackTrace();
}
}
//byte数组到16进制字符串
public String byte2string(byte[] data){
if(data==null||data.length<=1) return "0x";
if(data.length>200000) return "0x";
StringBuffer sb = new StringBuffer();
int buf[] = new int[data.length];
//byte数组转化成十进制
for(int k=0;k<data.length;k++){
buf[k] = data[k]<0?(data[k]+256):(data[k]);
}
//十进制转化成十六进制
for(int k=0;k<buf.length;k++){
if(buf[k]<16) sb.append("0"+Integer.toHexString(buf[k]));
else sb.append(Integer.toHexString(buf[k]));
}
return "0x"+sb.toString().toUpperCase();
}
文件解析:
FileImageOutputStream 换成了 FileOutputStream
FileImageInputStream 换成 FileInputStream
以上这篇Java 图片与byte数组互相转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# java
# byte数组
# Java任意长度byte数组转换为int数组的方法
# java对象转成byte数组的3种方法
# java中两个byte数组实现合并的示例
# Java整型数与网络字节序byte[]数组转换关系详解
# Java中byte、byte数组与int、long的转换详解
# Java 字节数组类型(byte[])与int类型互转方法
# Java中字符串与byte数组之间的相互转换
# Java基本类型与byte数组之间相互转换方法
# 基于java中byte数组与int类型的转换(两种方法)
# java byte数组与16进制间相互转换的示例
# 给大家
# 转化成
# 希望能
# 这篇
# 小编
# 大家多多
# 换成了
# buf
# output
# int
# input
# FileImageInputStream
# ByteArrayOutputStream
# File
# FileNotFoundException
# catch
# printStackTrace
# close
# read
# numBytesRead
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
用yum安装MySQLdb模块的步骤方法
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
如何在阿里云服务器自主搭建网站?
Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】
JavaScript如何实现错误处理_try...catch如何捕获异常?
Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件
python中快速进行多个字符替换的方法小结
如何在腾讯云服务器快速搭建个人网站?
Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
nodejs redis 发布订阅机制封装实现方法及实例代码
,交易猫的商品怎么发布到网站上去?
Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】
C语言设计一个闪闪的圣诞树
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
HTML 中如何正确使用模板变量为元素的 name 属性赋值
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
利用vue写todolist单页应用
Laravel如何使用模型观察者?(Observer代码示例)
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
如何基于云服务器快速搭建网站及云盘系统?
如何用花生壳三步快速搭建专属网站?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
高端建站三要素:定制模板、企业官网与响应式设计优化
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
C#如何调用原生C++ COM对象详解
如何在阿里云购买域名并搭建网站?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
个人网站制作流程图片大全,个人网站如何注销?
Laravel如何使用查询构建器?(Query Builder高级用法)
如何自定义建站之星模板颜色并下载新样式?
Laravel如何保护应用免受CSRF攻击?(原理和示例)
如何在宝塔面板中创建新站点?
如何在IIS中新建站点并解决端口绑定冲突?
javascript中闭包概念与用法深入理解
javascript基本数据类型及类型检测常用方法小结
如何在建站之星绑定自定义域名?
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
如何在 React 中条件性地遍历数组并渲染元素
Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤
Laravel集合Collection怎么用_Laravel集合常用函数详解
如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
Android利用动画实现背景逐渐变暗
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
如何快速生成专业多端适配建站电话?

