手机端小强原创文章,java小强个人博客站点
当前位置: 首页 >> 开源 >> Apache Commons Codec

Apache Commons Codec

42450 开源 | 2015-5-6

Apache Commons Codec

Apache Commons Codec (TM) software provides implementations of common encoders and decoders such as Base64, Hex, Phonetic and URLs.

 

Impetus

Codec was formed as an attempt to focus development effort on one definitive implementation of the Base64 encoder. At the time of Codec's proposal, there were approximately 34 different Java classes that dealt with Base64 encoding spread over the Foundation's CVS repository. Developers in the Jakarta Tomcat project had implemented an original version of the Base64 codec which had been copied by the Commons HttpClient and Apache XML project's XML-RPC subproject. After almost one year, the two forked versions of Base64 had significantly diverged from one another. XML-RPC had applied numerous fixes and patches which were not applied to the Commons HttpClient Base64. Different subprojects had differing implementations at various levels of compliance with the RFC 2045.

Out of that confusing duplication of effort sprang this simple attempt to encourage code reuse among various projects. While this package contains a abstract framework for the creation of encoders and decoders, Codec itself is primarily focused on providing functional utilities for working with common encodings.

 

URL:http://commons.apache.org/proper/commons-codec/index.html

 

DEMO:

package test;
import org.apache.commons.codec.binary.Base32;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.BinaryCodec;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.codec.net.URLCodec;
public class CodecTest {
 
 public static void main(String[] args) throws Exception{
  String str = "abc";  
  
  // MD5
  System.out.println(DigestUtils.md5Hex(str)); 
  
  // SHA1
  System.out.println(DigestUtils.sha1Hex(str));
  
  // Base64 加密
  byte[] b = str.getBytes();
  b = Base64.encodeBase64(b);
  System.out.println("Base64 Encode:" + new String(b));
  // Base64 解密
  b = Base64.decodeBase64(b);
  System.out.println("Base64 Decode:" + new String(b));
  
  Base32 b32 = new Base32();
  b = b32.encode(str.getBytes());
  System.out.println("Base32 Encode:" + new String(b));
  b = b32.decode(b);
  System.out.println("Base32 Decode:" + new String(b));
  
  // URL Encode
  URLCodec uc = new URLCodec();
  String s = uc.encode("http://www.javacui.com?name=崔素强", "UTF-8");
  System.out.println("URLCodec encode:" + s);
  s = uc.decode(s);
  System.out.println("URLCodec decode:" + s);
  
  // 二进制
  char[] c = BinaryCodec.toAsciiChars(str.getBytes());
  for(char bt : c){
   System.out.print(bt + " ");
  }
  System.out.println();
  b = BinaryCodec.fromAscii(c);
  System.out.println("BinaryCodec decode:" + new String(b));
  
  // StringUtils
 }
}

 

Console Out:

900150983cd24fb0d6963f7d28e17f72
a9993e364706816aba3e25717850c26c9cd0d89d
Base64 Encode:YWJj
Base64 Decode:abc
Base32 Encode:MFRGG===
Base32 Decode:abc
URLCodec encode:http%3A%2F%2Fwww.javacui.com%3Fname%3D%E5%B4%94%E7%B4%A0%E5%BC%BA
URLCodec decode:http://www.javacui.com?name=崔素强
0 1 1 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 0 1 
BinaryCodec decode:abc

 

Down:

commons-codec-1.10-src.zip

commons-codec-1.10.zip

apidocs.zip

 

OVER

推荐您阅读更多有关于“ apache commons Codec ”的文章

上一篇:JDBC读写大数据字段示例 下一篇:手机端使用提示样式

猜你喜欢

发表评论:

个人资料
blogger

java小强
没有思考,人生的路会越走越难!

搜索
分类
最新微语
  • 不是本人但真实经历,如果你得了绝症抑或大病,能告诉的人两只手能数过来,而能一直陪床真正帮你的人,一只手就够了。也许你会说我亲戚多哥们多同学多云云,但真遇上的时候,你敢说吗?即使你说了会有人像你想的那样吗?不要尝试考验人性,人走茶凉之类的话都听过,但不遇到事我们未曾理解其中的道理。

    2018-11-07 11:05

  • 每个人的一生都是不同的,我们都需要负重前行。每一种生活都是不同的,我们都需要真实面对。所经历的,让我学会一件事,顺其自然。人,总有很多自己想要的,总有很多困难要面对,总有很多人要去爱,我们不断思考人生,却总是迷失自己。如今,我们最缺的不是金钱和时间,而是忘记了自己的初衷。

    2018-09-28 14:42

  • 车也学了,年也过了,生日也过了,村里的会也赶了,这次,是真的,年过去了。不过我没回京,也没有在家找工作,我在等什么吗?反正现在正合了我这个懒人的要求,不过,我歇不住,思考下人生。

    2018-03-20 00:11

  • 8月1日,我已离开奋斗多年的北京。不知道是暂时的离开,还是永久的离别,反正已经离职在家,告别每日上班,每天苦累的煎熬,过一段属于自己的生活。以前是专职工作,现在专职生活。

    2017-08-18 12:47

  • 又弄完一个项目,累成狗,但是感觉又进步不少,除了很多坑已经踩过,做起来也是轻车熟路。同时也认识到,程序不在于你多牛逼,而是在乎你的细节把控度,而细节的关注,是一个优秀程序员必须要注意的。另外,要相信自己,勇敢向前,没人生下来就是成功的,而且,成功的路,比成功本身更重要。

    2017-06-30 09:46

  • 更多»

最新文章
热门文章
随机文章