base64编码
1 /** 2 * 3 * @Title: encodeBase64 4 * @Description: 对数据进行base64编码 5 * @param value 需要编码的数据 6 * @param encodeType 需要编码的类型,如UTF-8,gb2312等 7 * @return String 编码后的字符串 8 */ 9 public static String encodeBase64(String value,String encodeType) { 10 String result = ""; 11 try { 12 if (StringUtils.isNotBlank(value)) { 13 byte [] temp=value.trim().getBytes(encodeType); 14 result=new String(Base64.encodeBase64(temp),encodeType); 15 } 16 } catch (Exception e) { 17 logger.error(e.getMessage(), e); 18 } 19 return result; 20 }
base64解码
1 /** 2 * 3 * @Title: decodeBase64 4 * @Description: 对数据进行base64解码 5 * @param value 需要编码的数据 6 * @param encodeType 需要编码的类型,如UTF-8,gb2312等 7 * @return String 编码后的字符串 8 */ 9 public static String decodeBase64(String value,String encodeType){ 10 String result = ""; 11 try { 12 if (StringUtils.isNotBlank(value)) { 13 byte[] bytes = value.getBytes(encodeType); 14 Base64.decodeBase64(bytes); 15 result = new String(bytes,encodeType); 16 } 17 } catch (Exception e) { 18 logger.error(e.getMessage(), e); 19 } 20 return result; 21 }
实例
1 public static void main(String[] args) { 2 String temp="你摊上事了,摊上大事了。"; 3 String encodeType="UTF-8"; 4 String encodeType2="GB2312"; 5 String a=encodeBase64(temp,encodeType); 6 String b=encodeBase64(temp,encodeType2); 7 String aa=decodeBase64(temp,encodeType); 8 String bb=decodeBase64(temp,encodeType2); 9 System.out.println("编码前:"+temp+" 编码方式:"+encodeType+",编码后:"+a+" 解码后:"+aa); 10 System.out.println("编码前:"+temp+" 编码方式:"+encodeType2+",编码后:"+b+" 解码后:"+bb); 11 }
最后的输出结果为:
编码前:你摊上事了,摊上大事了。 编码方式:UTF-8,编码后:5L2g5pGK5LiK5LqL5LqG77yM5pGK5LiK5aSn5LqL5LqG44CC 解码后:你摊上事了,摊上大事了。
编码前:你摊上事了,摊上大事了。 编码方式:GB2312,编码后:xOPMr8nPysLBy6OszK/Jz7TzysLBy6Gj 解码后:你摊上事了,摊上大事了。
需要的jar包 commons-codec-1.4.jar 可以到http://commons.apache.org/codec/download_codec.cgi下载