用Base64编码图片

从此地址http://commons.apache.org/proper/commons-codec/download_codec.cgi

下载commons-codec-1.9-bin.zip 解压取得commons-codec-1.9.jar 将jar包添加到eclipse创建好的Java项目工程中,即可引用jar包中提供的类。

public interface BinaryDecoder extends Decoder 接口也可以继承父接口

Base64.java源代码路径:

commons-codec-1.9-src\src\main\java\org\apache\commons\codec\binary\Base64.java

因为Base64类是直接操作字节流,而不是字符流,这个类是线程安全的。

标准编码表 由26个大写字母 26个小写字母 0-9  +  /  共64的字符组成。

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.stream.FileImageOutputStream;
import org.apache.commons.codec.binary.Base64;

public class Base64Demo_01 {
    public static void main(String[] args) throws FileNotFoundException {
        //将图片文件转化为字节数组,并对其进行Base64编码处理
        File file = new File("c:\\a.jpg");
        FileInputStream fin = null;
        byte[] data = null;
        try {
            fin = new FileInputStream(file);
            data = new byte[fin.available()];
            fin.read(data);
            fin.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

        //查看编码后生成字符串
        String encodeStr = Base64.encodeBase64String(data);
        System.out.println(encodeStr);
        File outFile = new File("c:\\save.txt");
        FileOutputStream fos = new FileOutputStream(outFile);
        try {
            fos.write(encodeStr.getBytes());
            fos.flush();
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        //按字节编码
        byte[] encodeImage = Base64.encodeBase64(data);
        //生成编码后的jpg图片
        File imgFile = new File("c:\\b.jpg");
        try {
            FileImageOutputStream fos1 = new FileImageOutputStream (imgFile);
            fos1.write(encodeImage);
            fos1.flush();
            fos1.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        System.out.println();

    }
}

用Base64编码图片

时间: 2024-08-01 23:37:12

用Base64编码图片的相关文章

Delphi 读取 c# webservice XML的base64编码图片字符串转化图片并显示

Delphi 读取 c# webservice XML的base64编码图片字符串转化图片并显示 在 开发中遇到应用c#及asp.net的在的webservice 保存图片并以xml文件形式现实出来 并用delphi调用 的方法: 1.c#的webservice现实见 http://www.greensoftcode.net/techntxt/20127118441582992373 之前的文章. 2.在客户端用delphi显示 发现asp.net xml形式输出的图片是base64字符串形式.

VUE Base64编码图片展示与转换图片

图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址,使用 base64 传输图片文件可以节省一个 http 请求,图片的 base64 编码可以算是前端优化的一环 VUE Base64编码图片展示 <img :src="icon"> export default { data() { icon: 'data:image/png;base64,,XXXXX...', } } 图片在线转换Base64:http://imgbase64.d

Base64编码 图片与base64编码互转

package com.education.util; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; import java.io.*; /** * Created by jn-dinggao on 2016/2/4. */ public class Base64Util { // 将图片文件转化为字节数组字符串,并对其进行Base64编码处理 public static String GetImageStr(Stri

接口上传base64编码图片

1 package com.*.util; 2 3 import java.io.FileInputStream; 4 5 6 import java.io.FileOutputStream; 7 import java.io.IOException; 8 import java.io.InputStream; 9 import java.io.OutputStream; 10 import java.util.Date; 11 12 import Decoder.BASE64Decoder;

图片的base64编码的利与弊?

什么是图片的base64编码? 图片的base64编码,就是将一张图片的数据进行base64编码成字符串,用这个字符串代替图片的地址.这样的话下载图片,就不用发起http请求了,而可以随着html的下载一起将图片下载到本地. 图片的base64编码的利处: 将一些小图片数据编码成base64,可以减少http请求,避免造成浏览器请求阻塞. 图片的base64编码的弊处: 使用图片的base64编码,虽然可以减少http请求,但是如果在处理过程中,将大图片数据也进行了base64编码,这样在很大的

【前端攻略】:玩转图片Base64编码(转)

引言 图片处理在前端工作中可谓占据了很重要的一壁江山.而图片的Base64编码可能相对一些人而言比较陌生,本文不是从纯技术的角度去讨论图片的base64编码.标题略大,不过只是希望通过一些浅显的论述,让你知道什么是图片的base64编码,为什么我们要用它,我们如何使用并且方便的使用它,并让你懂得如何去在前端的实际工作中运用它. 什么是base64编码? 我不是来讲概念的,直接切入正题,图片的base64编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址. 这样做有什么意义呢?我

JAVA 将图片转换为Base64编码

这里使用的jar包是commons-codec-1.10.jar; 示例代码 1 import java.io.FileInputStream; 2 import java.io.FileOutputStream; 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.io.OutputStream; 6 7 import org.apache.commons.codec.binary.Base64;

base64编码加密图片和展示图片

base64是当前网络上最为常见的传输8Bit字节代码的编码方式其中之一.base64主要不是加密,它主要的用途是把某些二进制数转成普通字符用于 网络传输.由于这些二进制字符在传输协议中属于控制字符,不能直接传送,所以需要转换一下.虽然图片可能直接传输,但是我们也可以将它变成字符串直接放在 源码里,而不需要浏览器在读取到源码后再从服务器上下载.如何对图片进行base64编码 <?php $file = "./image/index.png"; $type = getimagesi

Javascript 将图片的绝对路径转换为base64编码

Javascript将图片的绝对路径转换为base64编码 我们可以使用canvas.toDataURL的方法将图片的绝对路径转换为base64编码:在这我们引用的是淘宝首页一张图片如下: var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg"; 我们如下编写代码: function getBase64Image(img) { var canvas = document.create