⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base64.java

📁 一个免费的CA,基于EJB平台的,老师叫我们测试,现把之共享出来让大家参考
💻 JAVA
字号:
/************************************************************************* *                                                                       * *  EJBCA: The OpenSource Certificate Authority                          * *                                                                       * *  This software is free software; you can redistribute it and/or       * *  modify it under the terms of the GNU Lesser General Public           * *  License as published by the Free Software Foundation; either         * *  version 2.1 of the License, or any later version.                    * *                                                                       * *  See terms of license at gnu.org.                                     * *                                                                       * *************************************************************************/ package org.ejbca.util;import java.io.ByteArrayOutputStream;/** * This class implements a BASE64 Character encoder/decoder as specified in RFC1521.  * It extends the bouncycastle implementation and adds the functionality to split lines  * with a '\n' after every 64 bytes. * * @version $Id: Base64.java,v 1.1 2006/01/17 20:32:19 anatom Exp $ */public class Base64 {    /**     * encode the input data producong a base 64 encoded byte array with the output lines be split by '\n' (64 byte rows).     *     * @param data data to be encoded     * @return a byte array containing the base 64 encoded data.     */    public static byte[] encode(byte[] data) {        return encode(data, true);    }	/**     * encode the input data producong a base 64 encoded byte array.     *     * @param data the data to be encoded     * @param splitlines whether the output lines will be split by '\n' (64 byte rows) or not.     * @return a byte array containing the base 64 encoded data.     */    public static byte[] encode(byte[] data, boolean splitlines) {		byte[] bytes = org.bouncycastle.util.encoders.Base64.encode(data);        if (!splitlines) {            return bytes;        }        // make sure we get limited lines...        ByteArrayOutputStream os = new ByteArrayOutputStream();        for (int i = 0; i < bytes.length; i += 64) {            if ((i + 64) < bytes.length) {                os.write(bytes, i, 64);                os.write('\n');            } else {                os.write(bytes, i, bytes.length - i);            }        }        return os.toByteArray();    }        public static byte[] decode(byte[] bytes) {        return org.bouncycastle.util.encoders.Base64.decode(bytes);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -