Apache Commons Codec

Wu Jun 2019-12-25 15:59:03
Categories: > Tags:

Apache Commons Codec官网 通用的编码解码算法(例如语音编码器、 Base64、URL)

包结构


Package Description
org.apache.commons.codec 由子包中各种实现使用的接口和类
org.apache.commons.codec.binary Base64, Base32, Binary, 和十六进制字符串编码和解码。
org.apache.commons.codec.cli 含有一个Digest类,运行命令行
org.apache.commons.codec.digest 简化常见的 MessageDigest 工作,包含一个兼容libc crypt(3) 的加密方法,支持DES,MD5,SHA-256和SHA-512算法以及Apache特定"$apr1$"变体。
org.apache.commons.codec.language 语言和语音编码器。
org.apache.commons.codec.net 网络相关的编码和解码。

常用


Codec 目前由一组工具和一个简单编码,解码框架组成,分为三类:二进制编码器,语言编码器和网络编码器。

工具

org.apache.commons.codec.digest 子包

DigestUtils.md5Hex(byte[] data);
DigestUtils.sha256Hex(byte[] data);
...

二进制编码器

org.apache.commons.codec.binary 子包

Base64 base64 = new Base64();
base64.encodeBase64(byte[] binaryData) 编码
base64.decodeBase64(String base64String) 解码
...
Hex hex = new Hex();
hex.encodeHex(byte[] data)
hex.decodeHex(char[] data)
...

语言编码器

org.apache.commons.codec.language 子包

Soundex soundex = new Soundex();
soundex.encode("resume");//R250
soundex.encode("resin");//R250
Metaphone metaphone = new Metaphone();
metaphone.encode("resume");//RSM
metaphone.encode("resin");//RSN

网络编码器

org.apache.commons.codec.net 子包

URLCodec codec = new URLCodec();
codec.encode(String str, String charset);
codec.decode(String str, String charset);
...