com.xingyuv.captcha.util.Base64Utils Maven / Gradle / Ivy
The newest version!
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package com.xingyuv.captcha.util;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
public abstract class Base64Utils {
private static final Charset DEFAULT_CHARSET;
public Base64Utils() {
}
public static byte[] encode(byte[] src) {
return src.length == 0 ? src : Base64.getEncoder().encode(src);
}
public static byte[] decode(byte[] src) {
return src.length == 0 ? src : Base64.getDecoder().decode(src);
}
public static byte[] encodeUrlSafe(byte[] src) {
return src.length == 0 ? src : Base64.getUrlEncoder().encode(src);
}
public static byte[] decodeUrlSafe(byte[] src) {
return src.length == 0 ? src : Base64.getUrlDecoder().decode(src);
}
public static String encodeToString(byte[] src) {
return src.length == 0 ? "" : new String(encode(src), DEFAULT_CHARSET);
}
public static byte[] decodeFromString(String src) {
return src.isEmpty() ? new byte[0] : decode(src.getBytes(DEFAULT_CHARSET));
}
public static String encodeToUrlSafeString(byte[] src) {
return new String(encodeUrlSafe(src), DEFAULT_CHARSET);
}
public static byte[] decodeFromUrlSafeString(String src) {
return decodeUrlSafe(src.getBytes(DEFAULT_CHARSET));
}
static {
DEFAULT_CHARSET = StandardCharsets.UTF_8;
}
}