将图片转成base64字符串并在JSP页面显示的Java代码

合集下载

JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)

JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)

JS实现对中⽂字符串进⾏utf-8的Base64编码的⽅法(使其与Java编码相同)本⽂实例讲述了JS实现对中⽂字符串进⾏utf-8的Base64编码的⽅法。

分享给⼤家供⼤家参考,具体如下:要进⾏编码的字符串:“select ⽤户名 from ⽤户”使⽤JAVA进⾏编码,Java程序:String sql = "select ⽤户名 from ⽤户";String encodeStr = new String(Base64.encode(sql.getBytes("UTF-8"))); // 编码System.out.println(encodeStr);得到:c2VsZWN0IOeUqOaIt+WQjSBmcm9tIOeUqOaItw==在Java中解码:sql = new String(Base64.decode(sql.getBytes()), "UTF-8");Java代码中为什么要使⽤getBytes("UTF-8")呢?因为Windows和Linux环境下默认编码不同,要使你的程序在不同平台下得到相同编码,必然要指定编码虽然Html和JS的编码都是utf-8,但JS从页⾯上得到的中⽂编码却是utf-16,所以直接对中⽂进⾏Base64编码将得到错误的结果,所以我们要先从utf-16转到utf-8再编码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="/1999/xhtml"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css"><!--body{margin:0px;padding:0px;}body,td{font-size:9pt;}--></style><script type="text/JavaScript"><!--var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";//将Ansi编码的字符串进⾏Base64编码function encode64(input) {var output = "";var chr1, chr2, chr3 = "";var enc1, enc2, enc3, enc4 = "";var i = 0;do {chr1 = input.charCodeAt(i++);chr2 = input.charCodeAt(i++);chr3 = input.charCodeAt(i++);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2)+ keyStr.charAt(enc3) + keyStr.charAt(enc4);chr1 = chr2 = chr3 = "";enc1 = enc2 = enc3 = enc4 = "";} while (i < input.length);return output;}//将Base64编码字符串转换成Ansi编码的字符串function decode64(input) {var output = "";var chr1, chr2, chr3 = "";var enc1, enc2, enc3, enc4 = "";var i = 0;if (input.length % 4 != 0) {return "";}var base64test = /[^A-Za-z0-9\+\/\=]/g;if (base64test.exec(input)) {return "";}do {enc1 = keyStr.indexOf(input.charAt(i++));enc2 = keyStr.indexOf(input.charAt(i++));enc3 = keyStr.indexOf(input.charAt(i++));enc4 = keyStr.indexOf(input.charAt(i++));chr1 = (enc1 << 2) | (enc2 >> 4);chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);chr3 = ((enc3 & 3) << 6) | enc4;output = output + String.fromCharCode(chr1);if (enc3 != 64) {output += String.fromCharCode(chr2);}if (enc4 != 64) {output += String.fromCharCode(chr3);}chr1 = chr2 = chr3 = "";enc1 = enc2 = enc3 = enc4 = "";} while (i < input.length);return output;}function utf16to8(str) {var out, i, len, c;out = "";len = str.length;for(i = 0; i < len; i++) {c = str.charCodeAt(i);if ((c >= 0x0001) && (c <= 0x007F)) {out += str.charAt(i);} else if (c > 0x07FF) {out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));} else {out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));}}return out;}function utf8to16(str) {var out, i, len, c;var char2, char3;out = "";len = str.length;i = 0;while(i < len) {c = str.charCodeAt(i++);switch(c >> 4) {case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: // 0xxxxxxxout += str.charAt(i-1);break;case 12: case 13:// 110x xxxx 10xx xxxxchar2 = str.charCodeAt(i++);out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F)); break;case 14:// 1110 xxxx 10xx xxxx 10xx xxxxchar2 = str.charCodeAt(i++);char3 = str.charCodeAt(i++);out += String.fromCharCode(((c & 0x0F) << 12) |((char2 & 0x3F) << 6) |((char3 & 0x3F) << 0));break;}}return out;}// 测试代码开始var de = encode64(utf16to8("select ⽤户名 from ⽤户"));document.writeln(de+"<br>");var ee = utf8to16(decode64(de))document.writeln(ee);// 测试代码结束//--></script></head><body></body></html>上⾯的代码都是从⽹上得来,拼凑后得到正确结果,在此感谢前辈们PS:这⾥再为⼤家推荐⼏款base64编码解码在线⼯具,相信在以后的开发中会⽤得到:更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》及《》希望本⽂所述对⼤家JavaScript程序设计有所帮助。

Java实现图片转base64字符串和图片互相转换

Java实现图片转base64字符串和图片互相转换

Java实现图⽚转base64字符串和图⽚互相转换⽬录Java实现图⽚转base64字符串和图⽚互相转换参考:base64编码字符串转换为图⽚,并写⼊⽂件/*** base64编码字符串转换为图⽚,并写⼊⽂件** @param imgStr base64编码字符串* @param path 图⽚路径* @return*/public static boolean base64StrToImage(String imgStr, String path) {if (imgStr == null)return false;BASE64Decoder decoder = new BASE64Decoder();try {// 解密byte[] b = decoder.decodeBuffer(imgStr);// 处理数据for (int i = 0; i < b.length; ++i) {if (b[i] < 0) {b[i] += 256;}}//⽂件夹不存在则⾃动创建File tempFile = new File(path);if (!tempFile.getParentFile().exists()) {tempFile.getParentFile().mkdirs();}OutputStream out = new FileOutputStream(tempFile);out.write(b);out.flush();out.close();return true;} catch (Exception e) {return false;}}图⽚转base64字符串/*** 图⽚转base64字符串** @param imgFile 图⽚路径* @return*/public static String imageToBase64Str(String imgFile) {InputStream inputStream = null;byte[] data = null;try {inputStream = new FileInputStream(imgFile);data = new byte[inputStream.available()];inputStream.read(data);inputStream.close();} catch (IOException e) {e.printStackTrace();}// 加密BASE64Encoder encoder = new BASE64Encoder();return encoder.encode(data);}测试:public static void main(String[] args) {String base64Str = imageToBase64Str("D:/pic/001.jpg");System.out.println(base64Str);boolean b = base64StrToImage(base64Str, "D:/pic/temp/002.jpg"); System.out.println(b);}。

Java图片与byte数组互相转换

Java图片与byte数组互相转换

Java图⽚与byte数组互相转换 1//图⽚到byte数组2public byte[] image2byte(String path){3byte[] data = null;4 FileImageInputStream input = null;5try {6 input = new FileImageInputStream(new File(path));7 ByteArrayOutputStream output = new ByteArrayOutputStream();8byte[] buf = new byte[1024];9int numBytesRead = 0;10while ((numBytesRead = input.read(buf)) != -1) {11 output.write(buf, 0, numBytesRead);12 }13 data = output.toByteArray();14 output.close();15 input.close();16 }17catch (FileNotFoundException ex1) {18 ex1.printStackTrace();19 }20catch (IOException ex1) {21 ex1.printStackTrace();22 }23return data;24 }1//byte数组到图⽚2public void byte2image(byte[] data,String path){3if(data.length<3||path.equals("")) return;4try{5 FileImageOutputStream imageOutput = new FileImageOutputStream(new File(path));6 imageOutput.write(data, 0, data.length);7 imageOutput.close();8 System.out.println("Make Picture success,Please find image in " + path);9 } catch(Exception ex) {10 System.out.println("Exception: " + ex);11 ex.printStackTrace();12 }13 }14//byte数组到16进制字符串15public String byte2string(byte[] data){16if(data==null||data.length<=1) return "0x";17if(data.length>200000) return "0x";18 StringBuffer sb = new StringBuffer();19int buf[] = new int[data.length];20//byte数组转化成⼗进制21for(int k=0;k<data.length;k++){22 buf[k] = data[k]<0?(data[k]+256):(data[k]);23 }24//⼗进制转化成⼗六进制25for(int k=0;k<buf.length;k++){26if(buf[k]<16) sb.append("0"+Integer.toHexString(buf[k]));27else sb.append(Integer.toHexString(buf[k]));28 }29return "0x"+sb.toString().toUpperCase();30 }⽂件解析:FileImageOutputStream 换成了 FileOutputStreamFileImageInputStream 换成 FileInputStream转⾃:/huang9012/article/details/18241539/。

js转换编码格式的方法

js转换编码格式的方法

js转换编码格式的方法在JavaScript中,可以使用以下方法来转换编码格式:1. 使用`encodeURIComponent()`和`decodeURIComponent()`函数来转换URL编码:```javascriptvar encodedString = encodeURIComponent("编码内容");var decodedString = decodeURIComponent(encodedString);```2. 使用`btoa()`和`atob()`函数来转换Base64编码:```javascriptvar encodedString = btoa("编码内容");var decodedString = atob(encodedString);```3. 使用`TextEncoder`和`TextDecoder`对象来转换UTF-8编码:```javascriptvar textEncoder = new TextEncoder();var textDecoder = new TextDecoder();var encodedData = textEncoder.encode("编码内容");var decodedData = textDecoder.decode(encodedData);```4. 使用`String.fromCharCode()`和`charCodeAt()`函数来转换字符编码:```javascriptvar encodedString = "";for (var i = 0; i < "编码内容".length; i++) {encodedString += String.fromCharCode("编码内容".charCodeAt(i) + 1);}var decodedString = "";for (var i = 0; i < encodedString.length; i++) {decodedString +=String.fromCharCode(encodedString.charCodeAt(i) - 1); }```这些方法可以根据不同的编码格式进行转换操作。

base64字符串还原成原图片

base64字符串还原成原图片

base64字符串还原成原图⽚今天做⼀个截图上传到ftp服务器的功能,⽤的是jquery插件cropbox.js,后台使⽤的springmvc@RequestMapping("/saveProductInfo")public ModelAndView uploadPreviewImage(HttpServletRequest request,AbcTourProduct product,ScheduleVO scheduleVO) throws IOException{ ModelAndView modelAndView=new ModelAndView(); //1.⽂件上传 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request; MultipartFile smallMutiFile = multipartRequest.getFile("upload-file"); MultipartFile bigMutiFile = multipartRequest.getFile("upload-file2"); String fileName1= smallMutiFile.getOriginalFilename(); String fileName2= bigMutiFile.getOriginalFilename(); int i1=stIndexOf("."); String name1=fileName1.substring(0, i1); String suffix1=fileName1.substring(i1); String smallName=name1+UUID.randomUUID().toString()+suffix1; int i2=stIndexOf("."); String name2=fileName2.substring(0, i2); String suffix2=fileName2.substring(i2); String bigName=name2+UUID.randomUUID().toString()+suffix2; File smallFile=FileUtil.multipartFileToFile(smallMutiFile); File bigFile=FileUtil.multipartFileToFile(bigMutiFile); boolean success1=FileUtil.ftpUpload(smallFile, smallName, "/journey/product/"); boolean success2=FileUtil.ftpUpload(bigFile, bigName, "/journey/product/"); if(success1&&success2){ String smallSrc="/journey/product/"+ smallName; String bigSrc="/journey/product/"+ bigName; product.setProImgUrl(bigSrc); product.setProSmallImgUrl(smallSrc); //新增产品 List<AbcSchedule>scheduleList =scheduleVO.getScheduleVOs(); productService.insertSelective(product, scheduleList); } return modelAndView;}这样做了之后,controller中获得的是原图⽽不是截图,于是我去看插件的实现,发现截图后的图⽚的src是base64的⼀串字符串,⾮常长,如下图只是⼀⼩部分:然后我就想着怎样把这⼀串的字符串在后台转成图⽚进⾏上传,做了⼀个⼩栗⼦:package com.admin.controller;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.PrintWriter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import .util.Base64;import org.springframework.stereotype.Controller;import org.springframework.util.FileCopyUtils;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.multipart.MultipartFile;import org.springframework.web.multipart.MultipartHttpServletRequest;import org.springframework.web.servlet.ModelAndView;@RequestMapping("/saveProductInfo")public void uploadPreviewImage(String base64Str) throws IOException{ int start = base64Str.indexOf(',') + 1; base64Str=base64Str.substring(start);//注意:需要将头部的给去掉 byte[] bytes=Base64.decodeBase64(base64Str); for (int i = 0; i < bytes.length; ++i) { if (bytes[i] < 0) {// 调整异常数据 bytes[i] += 256; } } OutputStream outputStream=new FileOutputStream("d://aaa"); outputStream.write(bytes); outputStream.flush(); outputStream.close();}对,就是这样,然后再⽤File取这个图⽚,在进⾏上传的相关步骤注意引⼊的Base64的包,maven坐标是这个<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.7</version></dependency>话说,这个东西花费了我⼤半天的功夫,,,主要原因是在截取去掉base64字符串的头部的的时候多算了⼀位导致⽣成的图⽚⼀直是损坏⽆法打开的,特此,mark⼀下=====================================================================================================在出问题的时候在技术群问了,有两点启发1.通过base64字符串不能获得原图⽚的后缀,所以巧妙的⽅法是不写后缀,因为图⽚都是在web端查看的,所以不写后缀的话会选择合适的形式来打开2.另外⼀哥们⼉写过的代码,还没仔细看,先存档⼀下。

java中把字符串转成任意格式的方法

java中把字符串转成任意格式的方法

在Java编程中,经常会遇到将字符串转换成不同格式的需求,例如将字符串转换成大写或小写、将字符串转换成日期格式、将字符串转换成特定编码格式等。

本文将介绍在Java中实现将字符串转换成任意格式的方法。

一、将字符串转换成大写或小写在Java中,可以使用String类的toUpperCase()方法将字符串转换成大写,也可以使用toLowerCase()方法将字符串转换成小写。

示例如下:```javaString str = "Hello, World!";String upperCaseStr = str.toUpperCase();String lowerCaseStr = str.toLowerCase();```二、将字符串转换成日期格式在Java中,可以使用SimpleDateFormat类将字符串转换成日期格式。

示例如下:```javaimport java.text.SimpleDateFormat;import java.util.Date;String str = "2021-10-01";SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Date date = sdf.parse(str);```三、将字符串转换成特定编码格式在Java中,可以使用String类的getBytes()方法将字符串转换成特定编码格式的字节数组,也可以使用String类的构造方法将字节数组转换成字符串。

示例如下:```javaString str = "Hello, 世界!";byte[] utf8Bytes = str.getBytes("UTF-8");String utf8Str = new String(utf8Bytes, "UTF-8");```四、其他类型转换在Java中,还可以将字符串转换成其他类型,例如将字符串转换成整数、将字符串转换成浮点数、将字符串转换成布尔值等。

java 数组转字符串的几种方法

java 数组转字符串的几种方法

一、利用循环拼接在Java中,将数组转换为字符串的一种常见方法是利用循环遍历数组,并将数组元素逐个拼接到一个字符串中。

这种方法的代码实现相对简单,适用于各种类型的数组。

示例代码如下:```public static String arrayToString(int[] array) {StringBuilder sb = new StringBuilder();for (int i = 0; i < array.length; i++) {sb.append(array[i]);if (i < array.length - 1) {sb.append(", ");}}return sb.toString();}```二、使用Arrays类Java中的Arrays类提供了一个名为toString()的方法,可以直接将数组转换为字符串。

这种方法更加简洁和方便,适用于基本数据类型和对象类型的数组。

示例代码如下:```public static String arrayToString(int[] array) {return Arrays.toString(array);}```三、利用StringJoiner类Java 8引入了StringJoiner类,可以更加灵活地构建字符串和处理分隔符。

利用StringJoiner类可以轻松地将数组转换为字符串,并指定分隔符、前缀和后缀等格式。

示例代码如下:```public static String arrayToString(int[] array) {StringJoiner sj = new StringJoiner(", ", "[", "]");for (int i : array) {sj.add(String.valueOf(i));}return sj.toString();}```四、使用Stream APIJava 8引入的Stream API提供了丰富的功能来处理集合和数组。

C#base64和图片互转

C#base64和图片互转

C#base64和图⽚互转C# imgage图⽚转base64字符/base64字符串转图⽚另存成//图⽚转为base64编码的字符串protected string ImgToBase64String(string Imagefilename){try{Bitmap bmp = new Bitmap(Imagefilename);MemoryStream ms = new MemoryStream();bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);byte[] arr = new byte[ms.Length];ms.Position = 0;ms.Read(arr, 0, (int)ms.Length);ms.Close();return Convert.ToBase64String(arr);}catch (Exception ex){return null;}}//base64编码的字符串转为图⽚protected Bitmap Base64StringToImage(string strbase64){try{byte[] arr = Convert.FromBase64String(strbase64);MemoryStream ms = new MemoryStream(arr);Bitmap bmp = new Bitmap(ms);bmp.Save(@"d:\test.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//bmp.Save(@"d:\"test.bmp", ImageFormat.Bmp);//bmp.Save(@"d:\"test.gif", ImageFormat.Gif);//bmp.Save(@"d:\"test.png", ImageFormat.Png);ms.Close();return bmp;}catch (Exception ex){return null;}}2: 图⽚直接显⽰string Base64String = "";//太长就不贴出来了byte[] bytes = Convert.FromBase64String(Base64String);ImageTagId.ImageUrl = "data:image/jpeg;base64," + Convert.ToBase64String(bytes);//3:转换成图⽚另存为然后图⽚显⽰出来public System.Drawing.Image Base64ToImage(string base64String){byte[] imageBytes = Convert.FromBase64String(base64String);MemoryStream ms = new MemoryStream(imageBytes, 0, imageBytes.Length);ms.Write(imageBytes, 0, imageBytes.Length);System.Drawing.Image image = System.Drawing.Image.FromStream(ms, true);return image;}使⽤⽅法:Base64ToImage(dd).Save(Server.MapPath("Hello.jpg"));Image1.ImageUrl = "Hello.jpg";4:直接转换存为路径下图⽚string dd = "";//base64字符串var bytes = Convert.FromBase64String(dd);using (var imageFile = new FileStream(@"d:\Hello1.jpg", FileMode.Create)){imageFile.Write(bytes, 0, bytes.Length);imageFile.Flush();}5://直接转换存为路径下图⽚string base64Str=""/byte[] bytes = System.Convert.FromBase64String(dd);File.WriteAllBytes(@"d:\newfile.jpg", bytes);string filePath = @"d:\MyImage.jpg";File.WriteAllBytes(filePath, Convert.FromBase64String(base64Str));6:多张base64图⽚转换为图⽚另存为public string Base64ToImage(string upimgPath, string base64String){string goodspath = Server.MapPath(upimgPath); //⽤来⽣成⽂件夹if (!Directory.Exists(goodspath)){Directory.CreateDirectory(goodspath);}var imgPath = string.Empty;if (!string.IsNullOrEmpty(base64String)){var splitBase = base64String.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);foreach (var item in splitBase){var path = upimgPath + Guid.NewGuid() + ".jpg";string filePath = Server.MapPath(path);// Server.MapPath(upimgPath + Guid.NewGuid() + ".jpg"); File.WriteAllBytes(filePath, Convert.FromBase64String(item));imgPath += path + ";";}}else { imgPath = ";"; }return imgPath.TrimEnd(';');}使⽤⽅法:va headimg="";Base64ToImage("UpLoadImg/HeadImage/", headimg)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

} } }
然后看测试类: import java.io.InputStream;
import com.ilucky.util.image.ImageUtil;
/** * 本事例主要讲了如下几点: * 1:将图片转换为 BASE64 加密字符串. * 2:将图片流转换为 BASE64 加密字符串. * 3:将 BASE64 加密字符串转换为图片. * 4:在 jsp 文件中以引用的方式和 BASE64 加密字符串方式展示图片. * @author IluckySi * @since 20150122 */ public class MainTest {
byte[] bytes = null; ByteArrayInputStream bais = null; BufferedImage bi = null; File file = null;
try { bytes = decoder.decodeBuffer(base64String); bais = new ByteArrayInputStream(bytes); bi = ImageIO.read(bais); file = new File(imagePath); ImageIO.write(bi, format == null ? "jpg" : format, file); System.out.println("将 BASE64 加密字符串转换为图片成功!");
ikMuNR699KInvZkx/sH0WqB9rzCuH5j7Mzrk1uel8HQW3GcmgK+y4axOR 0qCVX7gpoazxxk55E7W
0oue9GYGs7wXKFCnP7+/cdEovs7GUHMm3C0rvHD7jMTZFSjYugAW89Rv AXuckUPuf/X0pDczmMVM
wA+PYbQ9B780rUJu1nxoMZaAC5BDLjXU0oNe9KS33wXkqRKXXguv+as1 HejOxYhzNdwS+G4NjlUs
U0cX7+cscEYOudRQSw960ZPezPC9QIE69dv6Pk4exLX1GDm/Cu5z2Qojz my4WrOxZUOSPELNz9Fr
*本事例主要讲了如下几点: * 1:将图片转换为 BASE64 加密字符串. * 2:将图片流转换为 BASE64 加密字符串. * 3:将 BASE64 加密字符串转换为图片. * 4:在 jsp 文件中以引用的方式和 BASE64 加密字符串方式展示图片. 首先看工具类: import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.io.InputStream;
ADOc+eEfyUyT19Owp0SsKd0U5eYrlU+RcB73BHmdpS WNcn5dPejNDZq2d8jiW
</head> <body>
<!-data 表示取得数据的协定名称,image/png 是数据类型名称,base64 是数据的编码方法, 逗号后面是 image/png 文件 base64 编码后的数据. data:text/css;base64,base64 编码的 CSS 代码 data:text/javascript,Javascript 代码 data:text/javascript;base64,base64 编码的 Javascript 代码 data:image/gif;base64,base64 编码的 gif 图片数据 data:image/png;base64,base64 编码的 png 图片数据 data:image/jpeg;base64,base64 编码的 jpeg 图片数据 data:image/x-icon;base64,base64 编码的 icon 图片数据 -->
最后看 jsp 文件: <!DOCTYPE html> <html>
<head> <title>index.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8">
1WbExhoBDXT5zN+4XMcfNVYMv2dTYM0eZ4H0zGAWMz0L9JaK1P1PR Q7EWa0Bn3aJdh2NL2vAEQ2u
2jGwZo+zQHq7zJBZrusyc9IZEOEX8sM/yFxokafI8LO9jrx1GgaqY+CujYHr0 BhYs5eXoynO9Kff
import javax.imageio.ImageIO;
import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder;
/**
* @author IluckySi * @since 20150122 */ public class ImageUtil {
mx3RZqsCa/Y4I4dcaqilx10t0PGqCOssEjuvH7H9vW1zEgzNgK5ZYVh02HU N86w65tvGwJo9zhRH
cqmhlh70mtEC7a8Ie2ep6dPfW5eM3OnbhMo9S6GbLV6h04Eccqmhlh70o mdQC3TsFbbLZaYL/W2Z
public static void main(String[] args) { ImageUtil imageUtil = new ImageUtil();
String base64String = imageUtil.convertImageToByte("D:\\test.png", "png"); System.out.println(base64String); imageUtil.convertByteToImage(base64String, "D:\\test2.png", "png");
Nqy0Q7doCqzZ4yygXmYwi5meBa6Wmk4NNaRgpDEVQ8cX+YVbAk2L0V CcrL52BGv23AG0hMqQWcz0
LNBTHtGFkw9D4UQQkLxR+X/LujiF0RMz0xIqc3yBb4sifmp+80G0lCcFhWY JZ0USDu6ar8C6OUit
zwJyI8v3lVFX7pzLxMiXGXB/sdwncDoDvfXLkJFqh1WbuBSs2eOMnOn09G YGs5g5eYHcXw/HAWcz
MfRZOtwSQz7APloexcHdD0GLnVhAlzV7nPnT8j8zmMVMzwKdjtCy/qPJu N0kSY1L/OL250tw61ga
File file = new File(imagePath); BufferedImage bi = null; ByteArrayOutputStream baos = null;
String result = null; try {
bi = ImageIO.read(file); baos = new ByteArrayOutputStream(); ImageIO.write(bi, format == null ? "jpg" : format, baos); byte[] bytes = baos.toByteArray(); result = encoder.encodeBuffer(bytes).trim(); System.out.println("将图片转换为 BASE64 加密字符串成功!"); } catch (IOException e) { System.out.println("将图片转换为 BASE64 加密字符串失败: " + e); } finally { try {
F8vmamtkL4s4OHDy6ff5EQcXx91hf/jHB777fj8v3+d57p7nOQFA3EuoPx cLhV90SlxziOSeUrHd
WRz5fv1uc1fl03OGizdGgmBd/5K5mzNyyO0M4EkEXqBAiI58Ed9WEFp1+ MXYm1vW68hKM7AwJR5W
InputStream is = MainTest.class.getResourceAsStream("test.png"); String base64String2 = imageUtil.convertImageStreamToByte(is, "png"); System.out.println(base64String2); imageUtil.convertByteToImage(base64String2, "D:\\test3.png", "png"); } }
} catch (IOException e) { System.out.println("将 BASE64 加密字符串转换为图片失败: " + e);
相关文档
最新文档