http://ben-bai.blogspot.jp/2012/08/java-convert-image-to-base64-string-and.html
package test;
import java.io.IOException;
import sun.misc.BASE64Encoder;
import sun.misc.BASE64Decoder;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
public class ImageUtils {
/**
* Decode string to image
* @param imageString The string to decode
* @return decoded image
*/
public static BufferedImage decodeToImage(String imageString) {
BufferedImage image = null;
byte[] imageByte;
try {
BASE64Decoder decoder = new BASE64Decoder();
imageByte = decoder.decodeBuffer(imageString);
ByteArrayInputStream bis = new ByteArrayInputStream(imageByte);
image = ImageIO.read(bis);
bis.close();
} catch (Exception e) {
e.printStackTrace();
}
return image;
}
/**
* Encode image to string
* @param image The image to encode
* @param type jpeg, bmp, ...
* @return encoded string
*/
public static String encodeToString(BufferedImage image, String type) {
String imageString = null;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
ImageIO.write(image, type, bos);
byte[] imageBytes = bos.toByteArray();
BASE64Encoder encoder = new BASE64Encoder();
imageString = encoder.encode(imageBytes);
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
return imageString;
}
public static void main (String args[]) throws IOException {
/* Test image to string and string to image start */
BufferedImage img = ImageIO.read(new File("files/img/TestImage.png"));
BufferedImage newImg;
String imgstr;
imgstr = encodeToString(img, "png");
System.out.println(imgstr);
newImg = decodeToImage(imgstr);
ImageIO.write(newImg, "png", new File("files/img/CopyOfTestImage.png"));
/* Test image to string and string to image finish */
}
}
分享到:
相关推荐
在Java编程中,将图片与Base64编码进行相互转换是一项常见的任务,特别是在网络传输、存储和显示图像数据时。Base64是一种用于将任意二进制数据转换为可打印ASCII字符的编码方式,这对于在HTTP协议下传输二进制数据...
在Android开发中,图片处理和数据编码是常见的任务。Base64是一种用于将二进制数据转换为可打印字符的编码方式,...在实际项目中,根据具体需求选择合适的方式进行图片与Base64的转换,可以提高程序的效率和用户体验。
图片转换为字符串上传,图片和base64间的相互转换,接口上传图片,请求接口返回base64解析图片
本实验主要使用GD库、函数的封装和调用实现图片和base64编码数据流的转化,通过本案例转换后得到的base64编码字符串,可以存放到数据库中,需要时可以直接从数据库中读取,减少访问图片时的请求数量。
VB6实现图片和BASE64之间的转换,巧用XML,通用性好,可以用于将图片远程上传服务器,保存数据库,或才接收服务器图片数据后,转换成图片本地显示。
在这个过程中,文件`2.txt`可能包含了示例的BASE64编码字符串,而`BASE64解码.xls`可能是包含VBA宏的Excel工作簿,用于演示或执行这些解码和显示图片的步骤。在实际项目中,你可能需要根据具体需求调整和扩展这些...
在提供的描述中,提到了一个名为`GetBase64.exe`的工具,这可能是一个简单的实用程序,用于方便地进行Base64和图片之间的转换。用户只需打开图片,该工具就会自动将其转换为Base64文本;反之,将Base64文本复制到...
在这个特定的场景中,我们关注的是如何在LabVIEW中处理图片,包括图片的缩放、Base64编码和解码。 1. **图片缩放**: 在LabVIEW中,你可以使用图像处理库来实现图片的缩放功能。这个库提供了各种图像操作函数,...
支持任意图片与base64之间的转换和还原,还可以让图片和数组之间转换
Base64编码在Android中广泛应用于图片数据的网络传输和存储。通过`Base64.encodeToString()`和`Base64.decode()`方法,我们可以方便地进行编码和解码操作。在处理HTML中嵌入的Base64图片时,需要注意去除字符串的...
这个`WindowsFormsApplication2`项目可能包含了一个简单的Windows Forms应用程序,该程序包含两个按钮,分别对应“图片转Base64”和“Base64转图片”的功能。用户可以选择本地图片文件,然后点击按钮进行转换,转换...
在IT领域,尤其是在Web开发和数据传输中,Base...总的来说,C++和OpenCV库为处理图片与Base64编码提供了强大支持,使开发者能够在各种场景下灵活地进行数据转换,例如在网络上传输图片数据或者在数据库中存储图片信息。
我们将讨论jpg和png图片如何转化为base64字符串,以便在网络上传输或存储。 首先,让我们了解什么是base64编码。Base64是一种数据编码方法,用于将二进制数据转换为ASCII字符串形式,以便在电子邮件、HTML或JSON等...
包含的两个文件"BASE64_TO_IMAGE.exe"是实际的执行程序,用户可以直接运行进行Base64和图片的转换操作;"1.png"可能是示例图片或用于演示如何使用该工具的说明图。 总的来说,"Base64转图片"工具利用MFC提供的功能...
python 实现 图片和base64字符串相互转换。 博客在 https://blog.csdn.net/quyingzhe0217/article/details/134372785。
6. **图片转Base64**:相反的过程,将本地图片文件读取并转换成Base64字符串,便于在网页或应用程序中内嵌图片,特别是在不需要服务器存储或传输原始图片文件的情况下。 7. **支持大于1M内容**:许多在线工具可能对...
在IT领域,Base64是一种常见的数据...总结来说,C++中的Base64图片转换涉及到文件操作、二进制数据处理、Base64编码和解码算法的实现。理解这些概念和操作对于处理图片和其他二进制数据在网络和存储中的传输至关重要。
// 图片转Base64 let imgBlob = // 图片Blob对象 let base64String = window.URL.createObjectURL(imgBlob); // Base64转图片 let decodedData = atob(base64String); let imgBlob = new Blob([decodedData], {type...
.net 编写的图片和Base64互转的工具。(含源码) Linux时间格式和年月日互转工具。
此外,大量使用Base64编码的图片会增加服务器的存储和带宽消耗。因此,一般建议只对小型图片或图标使用Base64嵌入方式。 5. 编码细节和兼容性:在使用Base64编码嵌入图片时,需要确保编码的字符串格式正确,且编码...