1. package com.tw.code;  
  2.  
  3. import java.io.IOException;  
  4.  
  5.  
  6. /**  
  7.  * <p>java base64编码和解码的演示类  
  8.  * 注:base64编码后通过url传递时,获得时"="会给替换掉,  
  9.  * 处理方式:在编码前将"=","/","+" 替换成别的字符,在解码之前替换回来  
  10.  * </p>  
  11.  * @author tw 2010-03-01  
  12.  *  
  13.  */ 
  14. public class Base64EnAndDeCode {  
  15.  
  16.     /**  
  17.      * 编码  
  18.      * @param filecontent  
  19.      * @return String  
  20.      */ 
  21.     public static String encode(byte[] bstr){  
  22.     return new sun.misc.BASE64Encoder().encode(bstr);  
  23.     }  
  24.  
  25.     /**  
  26.      * 解码  
  27.      * @param filecontent  
  28.      * @return string  
  29.      */ 
  30.     public static byte[] decode(String str){  
  31.     byte[] bt = null;  
  32.     try {  
  33.         sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder();  
  34.         bt = decoder.decodeBuffer( str );  
  35.     } catch (IOException e) {  
  36.         e.printStackTrace();  
  37.     }  
  38.         return bt;  
  39.     }  
  40.  
  41.     /**  
  42.      * @param args  
  43.      */ 
  44.     public static void main(String[] args) {  
  45.         Base64EnAndDeCode te = new Base64EnAndDeCode();  
  46.         String oldStr = "我的会议tw";  
  47.         oldStr = te.encode(oldStr.getBytes());  
  48.         System.out.println("----oldStr:"+oldStr);  
  49.           
  50.         String str3 = "5oiR55qE5Lya6K6udHc!";  
  51.           
  52.         String str = oldStr;  
  53.         String str2 = new String(te.decode(str));  
  54.         System.out.println("-----str2:"+str2);  
  55.     }  
  56.  
  57. }