编码代码:
FileInputStream fileForInput = new FileInputStream("c:\\test.gif");
String content = new String();
byte[] bytes = new byte[fileForInput.available()];
fileForInput.read(bytes);
content = new sun.misc.BASE64Encoder().encode(bytes); //具体的编码方法
fileForInput.close();
解码代码:
str = "";//编码内容
byte[] result =new sun.misc.BASE64Decoder().decodeBuffer(str.trim());
RandomAccessFile inOut = new RandomAccessFile("c:\\my.jpg","rw");
inOut.write(result);
inOut.close();
第二种
package com.vista.test;
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 MyTest
{
public static void main(String[] args)
{
String strImg = GetImageStr();
GenerateImage(strImg);
}
public static String GetImageStr()
{//将图片文件转化为字节数组字符串,并对其进行Base64编码处理
String imgFile = "d:\\111.jpg";//待处理的图片
InputStream in = null;
byte[] data = null;
//读取图片字节数组
try
{
in = new FileInputStream(imgFile);
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)
{//对字节数组字符串进行Base64解码并生成图片
if (imgStr == null) //图像数据为空
return false;
BASE64Decoder decoder = new BASE64Decoder();
try
{
//Base64解码
byte[] b = decoder.decodeBuffer(imgStr);
for(int i=0;i<b.length;++i)
{
if(b[i]<0)
{//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片
String imgFilePath = "d:\\222.jpg";//新生成的图片
OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
return true;
}
catch (Exception e)
{
return false;
}
}
}
分享到:
相关推荐
QT图片Base64编码与解码是C++编程中一种常见的技术,特别是在处理网络传输或者存储图片数据时。Base64是一种将二进制数据转换为可打印ASCII字符的编码方式,它通过特定的算法将每3个字节的数据转换为4个ASCII字符,...
在IT行业中,图片Base64编码是一种常见的数据传输和存储方式,它将图片转换成文本字符串,便于在网络中传输,特别是在处理小程序等轻量级应用时尤为常见。OCR(Optical Character Recognition,光学字符识别)技术则...
二维码生成和图片Base64编码解码是两个在IT领域中常见的操作,广泛应用于数据传输、网页设计和移动应用等领域。下面将详细讲解这两个主题。 首先,二维码(Quick Response Code)是一种二维条形码,可以存储更多的...
在这个特定的场景中,我们关注的是如何在LabVIEW中处理图片,包括图片的缩放、Base64编码和解码。 1. **图片缩放**: 在LabVIEW中,你可以使用图像处理库来实现图片的缩放功能。这个库提供了各种图像操作函数,...
总结,iOS中的图片BASE64编码解码是开发中的常用技巧,能够帮助开发者在各种场景下灵活地处理图像数据。无论是网络传输、本地存储还是JSON交换,都能看到它的身影。了解并熟练掌握这一技术,对于提升iOS应用的功能性...
这个程序可能包含一个主函数,接收输入数据,生成二维码,添加logo(如果需要),然后将二维码图片Base64编码后输出。 在提供的“tools”压缩包中,可能包含了用于生成和处理二维码的工具类或者示例代码。通过解压...
在给定的“ASP源码—图片base64编码互转工具.zip”压缩包中,我们可以推测它包含了一个ASP应用程序,该程序允许用户将图片转换为Base64编码,或者将Base64编码还原为图片。 1. **Base64编码**:Base64是一种在网络...
在本示例中,我们讨论的是如何使用JavaScript对基于Base64编码的图片进行解码并显示在网页上。Base64是一种用于将二进制数据编码为ASCII字符串的编码方式,它在传输或存储非文本数据时非常有用,例如图片。 在HTML...
"获取图片base64编码"这个主题涉及到的是如何将图片这种二进制文件转化为Base64格式的字符串。下面我们将详细探讨这一过程以及相关的技术知识点。 首先,我们要理解Base64的基本原理。Base64使用64个字符(包括大小...
.NET 图片Base64编码与Data URI方案是网络开发中常用的一种技术,它允许我们将图片数据直接嵌入到HTML或CSS代码中,从而减少HTTP请求,提高页面加载速度。下面将详细阐述这两个概念以及在.NET环境中如何实现它们。 ...
图片Base64编码的利与弊分析
【程序老媛出品,必属精品,亲测校正,...资源名:vb 图片转base64编码 程序源码 资源类型:程序源代码 源码说明: 基于vb编写的实现图片转base64编码程序源码 非常适合借鉴学习 适合人群:新手及有一定经验的开发人员
标题提到的"基于ASP的图片base64编码互转工具"是一个利用ASP技术实现的功能,它允许用户将图片转换为base64编码,反之亦然。 Base64是一种用64个字符(A-Z, a-z, 0-9, + 和 /)来表示二进制数据的编码方式,通常...
在iOS开发中,有时我们需要将图片数据转换成字符串格式以便在网络上传输,这时Base64编码就显得尤为重要。Base64是一种用64个字符来表示任意二进制数据的方法,它将二进制数据转化为可打印的ASCII字符,使得图片可以...
本主题涉及的知识点主要包括Base64编码原理、如何进行图片的Base64编码与解码,以及在实际应用中的注意事项。 1. Base64编码原理: Base64是一种基于64个字符的编码方式,这些字符包括大小写字母(A-Z, a-z)、...
在这个“易语言-图片base64编码互换”主题中,我们将深入探讨如何使用易语言进行图片与Base64编码之间的转换。 Base64是一种用于将二进制数据转换为ASCII字符串的编码方法,它在互联网上传输图片、音频或视频等二...
图片base64编码互转工具是广大站长朋友非常实用的工具。将图片转换成base64编码的,在web网上一般用于小图片上,不仅可以减少图片的请求数量(集合到js、css代码中),还可以防止因为一些相对路径等问题导致图片404...
根据图片的格式读取图片的base64编码。在自定义控件时常用到。
在这个特定的场景中,我们讨论的是如何使用Delphi编程语言来处理图片的Base64编码,并将其保存为文本格式。Delphi是一款强大的面向对象的编程工具,广泛用于开发Windows应用程序。 Base64编码的基本原理是将每3个...
"将图片进行Base64编码后传输"是一种高效且便捷的方式,它允许我们直接将图片数据嵌入到文本格式中,方便在网络中传递。这种技术广泛应用于JSON API、HTML页面以及任何不支持二进制数据流的系统。 Base64是一种编码...