Base64编码解释
Base64编码哀求把3个8位字节(38=24)转化为4个6位的字节(46=24),之后在6位的前面补两个0,形成8位一个字节的形式。 如果剩下的字符不敷3个字节,则用0添补,输出字符利用'=',因此编码后输出的文本末端可能会涌现1或2个'='。
1)Base64编码解码包下载:http://commons.apache.org/proper/commons-codec/

下载commons-codec-1.9.jar里面有base64类org.apache.commons.codec.binary.Base64;根本代码如下:
/ 解密 / public static String decodeStr(String pwd) { Base64 base64 = new Base64(); byte[] debytes = base64.decodeBase64(new String(pwd).getBytes()); return new String(debytes); } / 加密 / public static String encodeStr(String pwd) { Base64 base64 = new Base64(); byte[] enbytes = base64.encodeBase64Chunked(pwd.getBytes()); return new String(enbytes); }
2)如果用JRE默认的sun.misc.BASE64Decoder和sun.misc.BASE64Encoder,没有识别出包,则先移除工程的JRE包再重新加上,然后clean工程即可。 根本代码如下:
import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder; public static void main(String[] args) throws Exception { String str = \"大众java12345\公众; String ret = null; ret = new BASE64Encoder().encode(str.getBytes()); System.out.println(\"大众加密前:\"大众+str+\公众 加密后:\"大众+ret); str = \"大众amF2YTEyMzQ1\"大众; try { ret = new String(new BASE64Decoder().decodeBuffer(str)); } catch (IOException e) {e.printStackTrace();} System.out.println(\公众解密前:\公众+str+\"大众 解密后:\公众+ret);}
3)用it.sauronsoftware.base64包,可到http://www.sauronsoftware.it/projects/javabase64/manual.php下载,根本代码如下:
byte[] source = ...; // load your data herebyte[] encoded = Base64.encode(source);byte[] decoded = Base64.decode(encoded);