Java实现BASE64编解码

作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

BASE64和其它类似的编码算法通经常使用于转换二进制数据为文本数据,其目的是为了简化存储或传输。更详细地说,BASE64算法主要用于转换二进制数据为ASCII字符串格式。Java语言提供了一个很好的BASE64算法的实现,即Apache Commons Codec工具包。本文将简要地讲述如何使用BASE64以及它是如何工作的。

以下我们用BASE64对字符串进行编码:

import java.io.UnsupportedEncodingException;
import org.apache.commons.codec.binary.Base64;public class Base64Test {public static void main(String[] args){String str = "Hello World";try{byte[] encodeBase64 = Base64.encodeBase64(str.getBytes("UTF-8"));System.out.println("RESULT: " + new String(encodeBase64));} catch(UnsupportedEncodingException e){e.printStackTrace();}}
}

输出结果为:

RESULT: SGVsbG8gV29ybGQ=

上面输出的字符串是“Hello world”字符串的8位二进制值被连接在一起,然后以6位分组。随后每一个组都被转换成一个单独的数字并映射到Base64的索引。

binary  dec Base64
010010  18  S
000110  6   G
010101  21  V
101100  44  s
011011  27  b
000110  6   G
111100  60  8
100000  32  g
010101  29  d
110110  54  2
111101  61  9
110010  50  y
011011  27  b
000110  6   G
010000  16  Q

注意:字符串最后加上了“=”,其意思表示字符串编码的结束。

转载于:https://www.cnblogs.com/hrhguanli/p/3939727.html

Java实现BASE64编解码相关推荐

  1. Java对base64编解码总结

    概述 java对base64编解码的通用处理方法. 关于base64编码Encode和Decode编码的几种方式 Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Bina ...

  2. Java 原生 Base64 编解码、Md5、SHA-1、SHA-256 加密摘要算法

    目录 常用加密算法对比 Base64 编解码 MessageDigest 信息摘要 MD5 信息摘要算法 常用加密算法对比 常用加密算法对比 Base64 编解码 1.BASE64 有自己的编码表,可 ...

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

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

  4. base64 decode java_Java实现Base64编解码

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

  5. Java 8实现BASE64编解码

    Java 8实现BASE64编解码 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs Java一直缺少BASE64编码 API,以至于通常在项目开发中会选用 ...

  6. Jva编解码,加密工具类大全(Base64编解码,URL 编解码,sha56_Hmac加密,MD5对字符串进行加密,java自带类实现SHA-256方式加密)

    Base64编解码 /*** Base64编码.*/public static String encodeBase64(byte[] input) {return new String(Base64. ...

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

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

  8. 通过OpenSSL的接口实现Base64编解码

    对openssl genrsa产生的rsa私钥pem文件,使用普通的base64解码会有问题,如使用https://blog.csdn.net/fengbingchun/article/details ...

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

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

最新文章

  1. R语言编程艺术#01#数据类型向量(vector)
  2. re:Invent解读:没想到你是这样的AWS
  3. 【Android】窗口构成 应用窗口+系统窗口
  4. 全量更新和增量更新_增量BIOS更新或直接更新到最新版本哪个更好?
  5. linux的基础知识——终端
  6. GLSL学习教程博客
  7. QT创建文件夹(QDir方式)
  8. echart data放入数组_线性表(数组、链表、队列、栈)详细总结
  9. PAT (Basic Level) Practice1028 人口普查
  10. System Center Configuration Manager 2016 域准备篇(Part2)
  11. tp5 自定义配置文件
  12. python第四章选择题_PythonCrashCourse 第四章习题
  13. 群晖nas存储系统原理_群晖NAS入门教程第四节:群晖存储空间管理员功能和磁盘阵列类型的简介...
  14. 多媒体处理常用软件:图像、文本、音频、视频、动画、微课
  15. 原生js实现锚点定位,tab跟随内容变化,PC/移动端均适用
  16. 网站统计系统内容分析
  17. 5328笔记 Advanced ML Chapter1-Introduction to Machine Learning Problems
  18. 2-44钟静雯_day05
  19. idea 自动同步文件本地内容设置
  20. 正则表达式 - 自动生成器

热门文章

  1. Spring中IoC的入门实例
  2. Mac下使用OpenCV
  3. 解读main()方法中的String[] args
  4. Greenplum添加mirror步骤
  5. iOS Swift GCD 开发教程
  6. Java枚举的小用法
  7. 《ArcGIS Engine+C#实例开发教程》第一讲桌面GIS应用程序框架的建立
  8. maven 笔记,概念
  9. 不同配置决定不同的复制的流程
  10. 只须9招牵着职场幸福走