`

java中图片与Base64位编码互转

阅读更多
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;

public class Test64Bit {
	public static void main(String[] args) {
// 测试从Base64编码转换为图片文件
//  String strImg = "";
  GenerateImage(GetImageStr("d:\\aliyun-menu.png"), "D:\\aliyun-menu2.png");
// 测试从图片文件转换为Base64编码
//  System.out.println(GetImageStr("d:\\aliyun-menu.png"));
}

	public static String GetImageStr(String imgFilePath) {// 将图片文件转化为字节数组字符串,并对其进行Base64编码处理
		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编码过的字节数组字符串
	}

	public static boolean GenerateImage(String imgStr, String imgFilePath) {// 对字节数组字符串进行Base64解码并生成图片
		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;
		}
	}
}
分享到:
评论

相关推荐

    JAVA将图片转换为Base64编码

    在本文中,我们介绍了如何使用Java将图片转换为Base64编码,并将Base64编码字符串解码成图片。使用Base64编码可以将图片数据转换为文本数据,使得数据传输和存储更加安全和可靠。同时,我们也学习了如何使用Apache ...

    java将图片转成Base64编码

    在给定的压缩包文件中,`java将图片转成Base64编码.htm`可能是包含上述示例代码的一个网页,而`java将图片转成Base64编码_files`可能是该网页的资源文件夹,可能包含了测试用的图片文件。 总之,Java中的Base64编码...

    java和js相互base64编码解码

    在IT行业中,Base64是一种常见的数据编码方式,它将任意二进制数据转换为可打印的ASCII字符,常用于在网络上传输包含非ASCII字符的数据,如图片或PDF等。在Java和JavaScript中,Base64编码和解码是两个重要的功能,...

    图片文件与Base64编码字节数组字符串互转

    在IT领域,尤其是在Web开发中,图片文件与Base64编码字节数组字符串的转换是一种常见的操作。这种转换在不直接使用图片文件路径或URL,而是将图片数据嵌入到HTML、CSS或JavaScript中时非常有用。下面我们将详细探讨...

    Java 从网络中读取图片 转换成Base64字符串

    在Java编程中,将网络上的图片读取并转换为Base64字符串是一项常见的任务,尤其在Web开发中,这样的操作可以用于数据传输或者存储。Base64是一种编码方式,能够将二进制数据转化为可打印的ASCII字符,方便在网络上...

    Java实现图片和Base64之间的相互转化

    在Java编程中,将图片与Base64编码进行相互转换是一项常见的任务,特别是在网络传输、存储和显示图像数据时。Base64是一种用于将任意二进制数据转换为可打印ASCII字符的编码方式,这对于在HTTP协议下传输二进制数据...

    Java基于Base64实现编码解码图片文件

    Java基于Base64实现编码解码图片文件是Java语言中的一种常见的编码解码实现方式。Base64是一种常用的字符编码,在很多地方都会用到,但它并不是安全领域下的加密解密算法,而是主要用于传输数据的正确性。 在Java中...

    java 图片base64 加密解密

    在Java编程中,图片Base64加密解密是一种常见的数据处理技术,特别是在网络传输和存储时,由于Base64编码可以将二进制数据转换为可打印的ASCII字符,因此非常适用。`sun.misc.BASE64Encoder`和`sun.misc.BASE64...

    ASP源码—图片base64编码互转工具.zip

    在给定的“ASP源码—图片base64编码互转工具.zip”压缩包中,我们可以推测它包含了一个ASP应用程序,该程序允许用户将图片转换为Base64编码,或者将Base64编码还原为图片。 1. **Base64编码**:Base64是一种在网络...

    java 把PDF转换成BASE64

    在IT行业中,编码和解码是常见的数据处理任务,其中BASE64是一种广泛使用的编码方式。此主题聚焦于如何在Java环境下将PDF文档转换为BASE64字符串。PDF(Portable Document Format)是一种通用的文件格式,用于存储...

    图片流转存Base64编码然后转图片 Spring 框下的

    总的来说,Spring框架为我们提供了强大的工具来处理图片流与Base64编码之间的转换,使得图片的上传、存储和下载变得更加便捷。在实际开发中,根据具体需求,可能还需要考虑性能优化、错误处理、安全性等问题,比如...

    图片url和base64位相互转换

    图片url转base64位,base64位的数据转换成图片,附带工具类

    图片与Base64互转

    总的来说,理解图片与Base64编码的互转对于IT从业者来说是相当重要的,它在数据传输、存储和显示方面都发挥着关键作用。而`GetBase64.exe`这样的工具则简化了这一过程,使得非编程人员也能轻松进行操作。

    Java实现图片与Base64编码互转

    在Java编程中,将图片与Base64编码进行互转是一种常见的操作,特别是在网页开发、数据传输和存储中。Base64编码是一种用于将二进制数据转化为ASCII字符串的编码方式,使得这些数据可以在文本格式的环境中(如电子...

    Base16 java字符串与十六进制互转 js字符串与十六进制互转

    这里我们将深入探讨“Base16”(也称为Hex)编码,以及Java和JavaScript中如何进行字符串与十六进制之间的转换。 Base16是一种简单的二进制到文本的编码方式,它将每个八位字节表示为两个十六进制数字。这种编码...

    将图片转成二进制并生成Base64编码字符串,再将二进制转换成各种图片

    Java标准库中的`java.util.Base64`类提供了一套完整的Base64编码和解码工具。你可以使用`getEncoder().encodeToString()`方法将字节数组转换为Base64编码的字符串。 3. **将Base64字符串解码回字节数组**: 如果...

    Java Base64编码和解码

    在Java中,处理Base64编码和解码的操作通常涉及到网络通信、数据序列化以及安全加密等方面。下面我们将详细探讨Java中的Base64编码和解码原理及其实现方式。 Base64编码的基本思想是将每3个字节(24位)的数据转换...

    Java实现的Base64编码程序

    在Java中实现Base64编码,我们可以使用内置的`java.util.Base64`类,这个类提供了方便的方法来进行Base64的编码和解码。 Base64编码的原理是将每3个字节(24位)的数据分为4组,每组6位。由于ASCII码是7位的,因此6...

    Android图片的Base64编码与解码及解码Base64图片方法

    在Android开发中,有时我们需要将图片转换为Base64编码的形式以便在网络传输或者存储时使用。Base64编码是一种常见的二进制数据转化为文本的方法,它通过使用64个可打印字符来表示原本的二进制数据,使得数据可以在...

    java-Base64编码

    Base64编码的基本原理是将每3个字节(24位)的数据转化为4个6位的字符,多余的位数通过在前面补0来完成,最后不足四组时在末尾加上等于号('=')进行填充。 标题"java-Base64编码"指的是使用Java语言实现的Base64...

Global site tag (gtag.js) - Google Analytics