JAVA 将图片转换为Base64编码
这里使用的jar包是commons-codec-1.10.jar;
示例代码
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream; import org.apache.commons.codec.binary.Base64; /**
* 将图片转换为Base64<br>
* 将base64编码字符串解码成img图片
* @创建时间 2015-06-01 15:50
*
*/
public class Img2Base64Util { public static void main(String[] args) {
String imgFile = "d:\\3.jpg";//待处理的图片
String imgbese=getImgStr(imgFile);
System.out.println(imgbese.length());
System.out.println(imgbese);
String imgFilePath = "d:\\332.jpg";//新生成的图片
generateImage(imgbese,imgFilePath);
}
/**
* 将图片转换成Base64编码
* @param imgFile 待处理图片
* @return
*/
public static String getImgStr(String imgFile){
//将图片文件转化为字节数组字符串,并对其进行Base64编码处理 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();
}
return new String(Base64.encodeBase64(data));
} /**
* 对字节数组字符串进行Base64解码并生成图片
* @param imgStr 图片数据
* @param imgFilePath 保存图片全路径地址
* @return
*/
public static boolean generateImage(String imgStr,String imgFilePath){
//
if (imgStr == null) //图像数据为空
return false; try
{
//Base64解码
byte[] b = Base64.decodeBase64(imgStr);
for(int i=0;i<b.length;++i)
{
if(b[i]<0)
{//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片 OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
return true;
}
catch (Exception e)
{
return false;
}
}
}
附上在html中显示图片的示例;
转换后的图片base64编码字符串为/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAIBAQIBAQICAgICAgICAwUD......
先给转换后的字符串加入头文件<img src="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAIBAQIBAQICAgICAgICAwUD......">;
<img src="data:image/jpg;base64,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
">
aaarticlea/jpg;base64,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" alt="" />
JAVA 将图片转换为Base64编码的更多相关文章
- java中图片地址base64编码的相互转换
public class Base64Url { /** * 将base64编码字符串转换为图片 * @param imgStr: base64编码字符串 * @param path: 图片路径-具体 ...
- C#中图片转换为Base64编码,Base64编码转换为图片
#region 图片转为base64编码的字符串 public string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = ...
- 将图片转换为Base64编码的字符串
图片以文件的形式存在,可以在表单中使用. 也可以转换成Base64编码的字符串,从而在css.js中以字符串的形式使用图片.例如,在css中设置背景图片.在js中用ajax上传图片. <!DOC ...
- nodejs抓取网络图片转换为base64编码的图片
抓取网络图片需要加载http模块 //假定这是index.js文件 var http = require('http'); var url = 'http://p0.meituan.net/tuanp ...
- 用javascript实现base64编码器以及图片的base64编码
前面的话 base-64作为常见的编码函数,在基本认证.摘要认证以及一些HTTP扩展中得到了大量应用.在前端领域,也常常把图片转换为base-64编码在网络中传输.本文将详细介绍base64的原理及用 ...
- JavaScript—图片与base64编码互相转换
图片转换为base64编码 <input type = "file" id = "file" onchange="popFileName(thi ...
- Javascript 将图片的绝对路径转换为base64编码
Javascript将图片的绝对路径转换为base64编码 我们可以使用canvas.toDataURL的方法将图片的绝对路径转换为base64编码:在这我们引用的是淘宝首页一张图片如下: var i ...
- PHP将图片转base64编码以及base64图片转换为图片并保存代码
图片转base64编码 /*图片转换为 base64格式编码*/ $img = 'uploads/01.png'; $base64_img = base64EncodeImage($img); ech ...
- Js 将图片的绝对路径转换为base64编码
转.... 我们可以使用canvas.toDataURL的方法将图片的绝对路径转换为base64编码:在这我们引用的是淘宝首页一张图片如下: var img = "https://img. ...
随机推荐
- poj 1860 Currency Exchange (SPFA、正权回路 bellman-ford)
链接:poj 1860 题意:给定n中货币.以及它们之间的税率.A货币转化为B货币的公式为 B=(V-Cab)*Rab,当中V为A的货币量, 求货币S通过若干此转换,再转换为原本的货币时是否会添加 分 ...
- Hibernate常见问题 No row with the given identifier exists问题的解决办法及解决
(1)在学习Hibernate的时候遇到了这个问题"No row with the given identifier exists"在网上一搜看到非常多人也遇到过这个问题! 问题的 ...
- 不用asp.net MVC,用WebForm照样能够实现MVC
在<避开WebForm天坑,拥抱ASP.Net MVC吧>这篇博客中我讲到了ASP.net WebForm由于一些先天的"诱导犯罪"的缺陷,如今用ASP.net MVC ...
- Java web轻量级开发面试教程的前言
本文来是从 java web轻量级开发面试教程从摘录的. 为什么要从诸多的Java书籍里选择这本?为什么在当前网络信息量如此大的情况下还要买这本书,而不是自己通过查阅网络资料学习?我已经会开发Java ...
- TypeScript学习笔记之基础类型
从今天开始学习typescript了,记录ts学习点滴,最后,使用ts结合nodejs开发后端应用,一起共勉吧: typescript最新版本2.6,所有演示代码均基于此版本 开始之前确定安装了如下n ...
- Html转JSP样式变型问题解决
一.问题描述 在我没将写好的 html 页面转变为 java web 中的 JSP 页面时.有时会发现,我们将 css .js 都引入到了页面中.当样式和我们想象的不一样,那么我们就要去解决这个问题. ...
- 【java】打印流的基本实现及java.io.PrintStream、java.io.PrintWriter示例
package 打印流; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; impor ...
- 使用node的fs读取文件
啊啊啊啊啊啊啊啊啊啊啊啊啊啊,被node的fs坑了一下午,我又爬上来了,要坚强的笑着活下去,嗯,没毛病老铁. let http = require('http'); let fs = require( ...
- OC学习13——Foundation框架中的集合
OC集合类是一些非常有用的工具类,它可以用于存储多个数量不等的对象,并可以实现常用的数据结构(栈.队列等),此外,OC集合还可用于保存具有映射关系的关联数组.OC的集合大致可以分为:NSArray.N ...
- 页面重绘(repaint)和回流(reflow)
前言 页面显示到浏览器上的过程: 1.1.生成一个DOM树. 浏览器将获取到的HTML代码解析成1个DOM树,包含了所有标签,包括display:none和动态添加的节点. 1.2.生成样式结构体. ...