📄 base64.java
字号:
package com.zhanghao.common.util;public class Base64 { public Base64() { } public static String decodeBase64(String data) { return decodeBase64(data.getBytes()); } /** * Decodes a base64 aray of bytes. * * @param data a base64 encode byte array to decode. * @return the decoded String. */ private static String decodeBase64(byte[] data) { int fillchar = '='; String cvt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz" + "0123456789+/"; int c, c1; int len = data.length; StringBuffer ret = new StringBuffer( (len * 3) / 4); for (int i = 0; i < len; ++i) { c = cvt.indexOf(data[i]); ++i; c1 = cvt.indexOf(data[i]); c = ( (c << 2) | ( (c1 >> 4) & 0x3)); ret.append( (char) c); if (++i < len) { c = data[i]; if (fillchar == c) break; c = cvt.indexOf( (char) c); c1 = ( (c1 << 4) & 0xf0) | ( (c >> 2) & 0xf); ret.append( (char) c1); } if (++i < len) { c1 = data[i]; if (fillchar == c1) break; c1 = cvt.indexOf( (char) c1); c = ( (c << 6) & 0xc0) | c1; ret.append( (char) c); } } return ret.toString(); } public static void main(String args[]){ String s= "JERHIEZZWEVRICAwNzMxNTc0MjU3NTplcWEkMTEwJC0xJCQkMCQwJDkxMTI3JDAkMTAyMDEzMzEzNDAyMDAwMjIwNjEkNjQkUmVnaXN0aW5nJDIwMDYtMTAtMjAgMTM6Mzc6MzE6MTA1JDEzJDAkMjAwNi0xMC0yMCAxMzozNzozMSQkJCQwNzMxNTc0MjU3NSQ="; System.out.println(decodeBase64(s)); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -