apache commons-codec 使用实例

package com.jiepu.commons_codec_demo;

import org.apache.commons.codec.CharEncoding;
import org.apache.commons.codec.binary.Base32;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.codec.binary.StringUtils;
import org.apache.commons.codec.digest.Crypt;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.codec.digest.HmacUtils;
import org.apache.commons.codec.digest.Md5Crypt;
import org.apache.commons.codec.digest.Sha2Crypt;
import org.apache.commons.codec.digest.UnixCrypt;
import org.apache.commons.codec.net.BCodec;
import org.apache.commons.codec.net.QCodec;
import org.apache.commons.codec.net.URLCodec;

/**
 * commons-codec  demo
 * apache commons-codec实例
 *
 */
public class App {
	public static void main(String[] args) throws Exception {
		String str = "你好";
		String key="key";
		URLCodec urlCodec = new URLCodec();
		String code = urlCodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		String data = urlCodec.decode(code, CharEncoding.UTF_8);
		System.out.println(data);

		QCodec qcodec = new QCodec();
		code = qcodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		data = qcodec.decode(code);
		System.out.println(data);
		
		BCodec bcodec = new BCodec();
		code = bcodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		data = bcodec.decode(code);
		System.out.println(data);
		
		System.out.println(DigestUtils.md5Hex(str));
		System.out.println(DigestUtils.md2Hex(str));
		System.out.println(DigestUtils.sha1Hex(str));
		System.out.println(DigestUtils.sha256Hex(str));
		System.out.println(DigestUtils.sha384Hex(str));
		System.out.println(DigestUtils.sha512Hex(str));
		System.out.println(DigestUtils.shaHex(str));
		
		System.out.println(Sha2Crypt.sha512Crypt(str.getBytes()));
		System.out.println(Sha2Crypt.sha512Crypt(str.getBytes()));
		System.out.println(Md5Crypt.md5Crypt(str.getBytes()));
		System.out.println(UnixCrypt.crypt(str.getBytes()));

		System.out.println(HmacUtils.hmacMd5Hex(key, str));
		System.out.println(HmacUtils.hmacSha1Hex(key, str));
		System.out.println(HmacUtils.hmacSha256Hex(key, str));
		System.out.println(HmacUtils.hmacSha384Hex(key, str));
		System.out.println(HmacUtils.hmacSha512Hex(key, str));
		
		System.out.println( Md5Crypt.apr1Crypt(str));
		System.out.println(Crypt.crypt(str));
	
		
		code=Base64.encodeBase64String(str.getBytes());
		System.out.println(Base64.isBase64(code));
		System.out.println(StringUtils.newStringUtf8(Base64.decodeBase64(code)));
		
		char[] chs=Hex.encodeHex(str.getBytes());
		System.out.println(chs);
		System.out.println(StringUtils.newStringUtf8(Hex.decodeHex(chs)));
		System.out.println("Hello World!");
	}
}


转载于:https://my.oschina.net/wujianhua/blog/356266

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值