在项目中,需要将BASE64编码的图片转换为图片文件显示在WEB项目中,经GOOGLE一番搜索,自己写了个互换的工具类
package com.base.util;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
/**
* 图片与BASE64编码互转工具类
* @author wangwei
*
*/
public class ImageBase64Util {
public static void main(String[] args) {
// 测试从Base64编码转换为图片文件
// String strImg = "xxxxx"; \\图片BASE64字符串
// GenerateImage(strImg, "D:\\wangyc.jpg");
// 测试从图片文件转换为Base64编码
//System.out.println(GetImageStr("d:\\0.jpg"));
GenerateImage(GetImageStr("d:\\0.jpg"), "D:\\000.jpg");
}
/**
* 将图片文件转化为字节数组字符串,并对其进行Base64编码处理
* @param imgFilePath 图片路径
* @return String
*/
public static String GetImageStr(String imgFilePath) {
byte[] data = null;
// 读取图片字节数组
try {
InputStream in = new FileInputStream(imgFilePath);
data = new byte[in.available()];
in.read(data);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
// 对字节数组Base64编码
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(data);// 返回Base64编码过的字节数组字符串
}
/**
* 对字节数组字符串进行Base64解码并生成图片
* @param imgStr Base64字符串
* @param imgFilePath 生成图片保存路径
* @return boolean
*/
public static boolean GenerateImage(String imgStr, String imgFilePath) {
if (imgStr == null) // 图像数据为空
return false;
BASE64Decoder decoder = new BASE64Decoder();
try {
// Base64解码
byte[] bytes = decoder.decodeBuffer(imgStr);
for (int i = 0; i < bytes.length; ++i) {
if (bytes[i] < 0) {// 调整异常数据
bytes[i] += 256;
}
}
// 生成jpeg图片
OutputStream out = new FileOutputStream(imgFilePath);
out.write(bytes);
out.flush();
out.close();
return true;
} catch (Exception e) {
return false;
}
}
/**
* 对字节数组字符串进行Base64解码并生成图片
* @param imgStr 图片字符串
* @return byte[]
*/
public static byte[] getStrToBytes(String imgStr) {
if (imgStr == null) // 图像数据为空
return null;
BASE64Decoder decoder = new BASE64Decoder();
try {
// Base64解码
byte[] bytes = decoder.decodeBuffer(imgStr);
for (int i = 0; i < bytes.length; ++i) {
if (bytes[i] < 0) {// 调整异常数据
bytes[i] += 256;
}
}
// 生成jpeg图片
return bytes;
} catch (Exception e) {
return null;
}
}
}
分享到:
相关推荐
我在网上找了半天的java、js的base64编码解码结果没有,只好自己写了,js一个文件,java一个文件,调用里面是使用方法
java 把PDF转换成BASE64,java 把PDF转换成BASE64,java 把PDF转换BASE64,java 把PDF转换成BASE64java 把PDF转换成BASE64
Base64编码与图片互转
一款转码示例,可以直接运行。java将图片转成Base64编码。
labview 图片缩放 base64编码base64解码
用于利用Java程序将图片转换为Base64编码。简单易懂。
ajax post 上传图片springmvc获取并保存base64编码的图片的方法
在本文中,我们介绍了Base64.encodeBase64String方法的用途和功能,它是Java语言中用于Base64编码...Base64.encodeBase64String方法是Java中进行Base64编码的一种便捷实现,能够轻松地将二进制数据转换成Base64字符串。
【程序老媛出品,必属精品,亲测校正,...资源名:vb 图片转base64编码 程序源码 资源类型:程序源代码 源码说明: 基于vb编写的实现图片转base64编码程序源码 非常适合借鉴学习 适合人群:新手及有一定经验的开发人员
实现BASE64编码和解码程序, 在类中实现如下函数并运行测试正确。 BASE64编码算法请在网上查询。 public String encode(byte[] data) { } public byte[] decode(String b) { }
主要为大家详细介绍了java将图片转为base64返回给前端,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
用Java编写的Base64编码技术,可以把密文编码成为Base64编码,Base64编码技术广泛用于编码密文和电子邮件。
图片转base64编码工具支持PNG、GIF、JPG、BMP、ICO 格式,将图片转换为Base64编码,可以让你很方便地在没有上传文件的条件下将图片插入其它的网页、编辑器中。
Base64 编码解码 Java ,Java对字符串Base64 编码解码的方法!!
java端:返回类型非字符接口调用StringUtils#base64AndCompressJson进行编码压缩 ,返回类型为字符接口调用StringUtils#base64Andcompress js 端:引入压缩包中的js文件 ,调用deBase64AndUncompress进行解压解码
java 图片base64 加密解密 代码 包括jar
将图片以Base64的编码,内嵌在html的代码中, 提供的是样例代码 即: 不是在html中指定图片的路径的形式 结合: http://download.csdn.net/detail/okpfsje123/5304296 这样就可以在发送的邮件中,直接看到图片(图片...
提供一种Base64编码,并输出UTF-8格式的BASE64编码方式。本程序在微信小程序开发工具中已经测试通过。 Base64代码: [javascript] view plain copy print? (function(){ var BASE64_MAPPING = [ 'A','B','C','D',...
#功能说明:批量将图片文件转换未base64编码文件(txt格式) #使用说明:将需要转换的批量图片与当前脚本存到到同一目录, # 给当前脚本赋予可执行权限 # 执行脚本即可生成与之对应的txt文件,文件内存放base64编码 #...
VB6实现图片和BASE64之间的转换,巧用XML,通用性好,可以用于将图片远程上传服务器,保存数据库,或才接收服务器图片数据后,转换成图片本地显示。