zoukankan      html  css  js  c++  java
  • java Base64加密解密

    package com.zhaochao.utill;
    import java.io.UnsupportedEncodingException;
    import java.lang.reflect.Method;
    
    public class Base64Utill {
        public static String encode(String code) throws UnsupportedEncodingException, Exception {
            return encodeBase64(code.getBytes());
        }
    
        public static String decode(String code) throws UnsupportedEncodingException, Exception {
            return new String(decodeBase64(code));
        }
    
        public static String encodeBase64(byte[] input) throws Exception {
            Class clazz = Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
            Method mainMethod = clazz.getMethod("encode", byte[].class);
            mainMethod.setAccessible(true);
            Object retObj = mainMethod.invoke(null, new Object[] { input });
            return (String) retObj;
        }
    
        public static byte[] decodeBase64(String input) throws Exception {
            Class clazz = Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
            Method mainMethod = clazz.getMethod("decode", String.class);
            mainMethod.setAccessible(true);
            Object retObj = mainMethod.invoke(null, input);
            return (byte[]) retObj;
        }
    
        public static void main(String[] rags) throws UnsupportedEncodingException, Exception {
            String str = "abadjfajerjaqwrasdf";
            String code = Base64Utill.encode(str);
            System.err.println("加密前:" + str);
            System.err.println("加密后:" + code);
            System.err.println("解密后:" + Base64Utill.decode(code));
    
        }
    
    }
  • 相关阅读:
    MyEclipse编码集设置
    Tomcat内存溢出问题解决
    避免头文件多次编译
    C++指针学习(1)
    C++头文件和实现(用复数类举例)
    从helloworld开始
    标准库string类型
    浅谈Lua的Coroutine协程的多"线程"并发模型
    关于闭包函数的概念和原理
    笔记
  • 原文地址:https://www.cnblogs.com/azhqiang/p/5505340.html
Copyright © 2011-2022 走看看