Java图片和二进制互转,可以是jpg,png,gif格式
package com.webkfa.test; /** * * @author songlei */ import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; public class Test { static BASE64Encoder encoder = new sun.misc.BASE64Encoder(); static BASE64Decoder decoder = new sun.misc.BASE64Decoder(); public static void main(String[] args) { //把图片用二进制字符串输出 System.out.println(getImageBinary()); //二进制字符串转成图片 base64StringToImage(getImageBinary()); } public static String getImageBinary(){ File f = new File("C:\\Documents and Settings\\zhouyingxi\\桌面\\temp\\QQ图片20140922135352.jpg"); BufferedImage bi; try { bi = ImageIO.read(f); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(bi, "jpg", baos); byte[] bytes = baos.toByteArray(); return encoder.encodeBuffer(bytes).trim(); } catch (IOException e) { e.printStackTrace(); } return null; } public static void base64StringToImage(String base64String){ try { byte[] bytes1 = decoder.decodeBuffer(base64String); ByteArrayInputStream bais = new ByteArrayInputStream(bytes1); BufferedImage bi1 =ImageIO.read(bais); File w2 = new File("c://QQ.bmp");//可以是jpg,png,gif格式 ImageIO.write(bi1, "jpg", w2);//不管输出什么格式图片,此处不需改动 } catch (IOException e) { e.printStackTrace(); } } }
相关推荐
WebService二进制处理是Web服务技术中一个关键的议题,特别是在传输大容量或者非文本数据如图片、音频、视频等时。在传统的SOAP(简单对象访问协议)消息中,所有数据都以XML格式进行编码,这可能导致效率低下,因为...
2. **二进制转Base64**:读取到的图片数据是二进制形式的,我们需要将其转化为Base64编码。这个过程是通过对二进制数据进行分块,然后根据Base64编码规则将每块数据转换为对应的字符。 3. **生成Base64字符串**:...
在实际应用中,理解和掌握ASP源码中的Base64编码互转机制,可以提升开发者处理二进制数据的能力,同时对Web前端性能优化有积极作用。通过学习和分析这个源码,你可以更好地理解ASP的文件操作和数据编码技术。
Base64是一种编码机制,常用于在网络上传输和存储二进制数据,如图片、音频或视频文件。...通过理解并熟练运用`java.util.Base64`类,开发者可以轻松地实现在各种应用中转换和操作Base64编码的图片和其他二进制数据。
6. 文件组织:压缩包内的"图片字符串互转"可能是包含了源代码文件的目录,其中可能包括了实现上述功能的Java类,如`ImageStringConverter.java`,以及测试用例或者示例图片。 7. 安全与效率:虽然Base64编码可以使...
Base64是一种用于将任意二进制数据转换为ASCII字符集的方法,以便可以在电子邮件系统和其他文本格式中传输这些数据。在图片文件和Base64之间进行转换,主要涉及以下步骤: 1. 图片文件转Base64: - 首先,我们需要...
在Java编程中,将图片与Base64编码进行互转是一种常见的操作,特别是在网页开发、数据传输和存储中。Base64编码是一种用于将二进制数据转化为ASCII字符串的编码方式,使得这些数据可以在文本格式的环境中(如电子...
03版的.doc文件基于二进制的WordDocument格式,而07版的.docx则是基于XML的ZIP存档。这意味着07版的文档可以通过解压查看和修改其内部的XML文件,然后再重新打包。 使用Apache POI进行转换的基本步骤如下: 1. **...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
在Java开发过程中,我们经常会遇到数据格式转换的问题,尤其是在处理二进制数据如图片、文件等时。本文将详细介绍如何实现`Blob`、`InputStream`、`byte[]`之间的相互转换,并提供具体的代码示例。 #### Blob与byte...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印...
以上就是关于在Java、Python和C#中实现图像与字节数组互转的方法。在实际应用中,确保正确处理异常和资源管理是非常重要的。此外,选择正确的图像格式(如JPEG、PNG等)会影响转换后的文件大小和质量。在处理大量...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...
本压缩包文件包含的源码提供了实现这一功能的具体实现,允许用户通过Java应用程序在手机和计算机之间发送包含文本、图片、音频、视频等多媒体内容的消息。以下是对这一技术的详细解释以及源码可能涉及的关键知识点:...
Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印...
2. 如果文件包含二进制数据(如图片或非文本信息),编码转换可能不适用,因为这些数据不依赖字符编码。 3. 转换后的文件应当重新保存,以保持新的编码格式,否则再次打开时可能又会触发编码问题。 4. 对于大型文件...
Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印...