2019独角兽企业重金招聘Python工程师标准>>>

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;
       }
   }
}

转载于:https://my.oschina.net/xianxianmeier/blog/301522

图片进行base64编解码方法相关推荐

  1. Python学习教程:Python3内置模块之base64编解码方法小结

    Python学习教程:Python3内置模块之base64编解码方法小结 概述 Base64 是网络上最常见的用于传输 8Bit 字节码的编码方式之一,Base64 就是一种基于 64 个可打印字符来 ...

  2. base64编码 vba_【VBA研究】如何用Base64 编解码方法实现简单的加解密

    Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码,将数据变成字符串实现文本传输.由于编码简单,所以很容易实现,代码也是现成的.利用这个编码规则可以实现简单的加解密.编解码方 ...

  3. Android实战技巧之三十七:图片的Base64编解码

    通经常使用Base64这样的编解码方式将二进制数据转换成可见的字符串格式,就是我们常说的大串.10块钱一串的那种,^_^. Android的android.util包下直接提供了一个功能十分完备的Ba ...

  4. C语言实现对图片的base64编解码

    Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.Base64编码是从二进制到字符的过程,输出被映射到一组字符A-Za- ...

  5. python 图片base64 编解码,转换成Opencv,PIL.Image图片格式

    Python PIL.Image和OpenCV图像格式相互转换 二进制打开图片文件,base64编解码转成Opencv格式: # coding: utf-8 import base64 import ...

  6. ubuntu下c++中base64编解码测试和图片编解码测试

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 字符数组的base64编解码 base64.h #include <string>std::string base64_encode(un ...

  7. 图片解码 java_Java 8实现图片BASE64编解码

    前言 Basic编码是标准的BASE64编码,用于处理常规的需求:输出的内容不添加换行符,而且输出的内容由字母加数字组成. 最近做了个Web模版,其中想用Base64背景图.虽然网络上有现成的编码器, ...

  8. base64 decode java_Java实现Base64编解码

    为什么要用Base64编码 在网络中传输数据都是使用ascii方式传输.对于一些图片.视频等数据,可能就会被编码成ascii中不可见部分的编码.网络中不同的路由设备处理方式不同,有可能就会把这部分数据 ...

  9. Base64编解码原理并用Java手工实现Base64编解码

    Base64编解码原理 目前Base64已经成为网络上常见的传输8比特字节代码的编码方式之一.在做支付系统时,系统之间的报文交互都需要使用Base64对明文进行转码,然后进行签名或加密,之后再次Bas ...

最新文章

  1. gcp上使用gpu来学习tensorflow
  2. 项目: 用函数实现反弹球消砖块
  3. linux只剩 目录挂载,linux(centOS7)的基本操作(五) 磁盘、分区、挂载、卸载
  4. Nginx与Lua开发
  5. Typecho博客转移服务器,数据备份
  6. 小米6x更换关机音量键记录
  7. web 前端入坑第一篇:web前端到底是什么?有前途吗
  8. 日光能和电池两用计算机,为什么太阳照射的光可以给太阳能转化为电,而我们的日光灯却不行?...
  9. python中button对象的方法_Python cmds.shelfButton方法代码示例
  10. 如何恢复已删除的照片
  11. 如何像伟大的企业家一样写作
  12. python人脸识别门禁_Python+Opencv+Tkinter指纹识别与人脸识别的门禁兼考勤(二)
  13. Linux系统重启和停止Mysql服务教程
  14. 用半年的时间面试自己
  15. 软件工程到底是学啥的?就业前景咋样?
  16. vba的like和正则表达式
  17. 【剑侠情缘服务端】武侠题材角色扮演类手游源码+手工外网端+安卓APP+视频教程
  18. Libra R-CNN: Towards Balanced Learning for Object Detection
  19. 自定义线程池拒绝策略
  20. 微信公众号开发--群发图文消息,消息体包含图片地址

热门文章

  1. oracle如何删除重复数据第一条,oracle删除重复数据保留第一条记录
  2. Xamarin.Android编译CPU类型选择方式
  3. Unity 2D游戏开发快速入门(内部资料)
  4. javascript实战pdf_《TypeScript开发实战》总结
  5. java如何让控制台不输出报错_Java 控制台输入输出操作记录
  6. 基于脑电和特征加权阶段训练的驾驶员疲劳状态估计
  7. 看完书要及时消化(1)《暗时间》
  8. R显卡VR性能如何?AMD发布 VRMark Cyan Room 测试结果
  9. 武大50名学生将卫星送上天!用了老师800万科研经费,搭长征八号“顺风车”升空...
  10. 波兰极客用一张软盘运行Linux系统,用的还是最新内核!