使用 java.util.Base64 编码和解码字符串
Encoding and decoding strings with the use of java.util.Base64
我试图找到一种使用 java.util.Base64.Encoder 和解码器 类 来编码和解码字符串的方法。不幸的是,静态调用编码和解码方法是不可能的,所以我创建了对编码器和解码器的引用 类。但是为了为这些引用中的每一个创建一个实例对象,我需要将一些参数转换为构造函数。老实说,我什至不知道我可以向他们提出什么论据。 API 文档保持沉默 https://docs.oracle.com/javase/8/docs/api/java/util/Base64.Encoder.html。下面是我几乎可以工作的示例,由于缺少编码器实例而抛出 NullPointerException。
import java.util.Base64.Encoder;
import java.util.Base64.Decoder;
public class NumberCipher {
private static Encoder encoder;
private static Decoder decoder;
public static void main(String[] args) {
String test = "There is no clue about Batman and Robin tryst at 43 Joker Street Motel.";
String test_enc = encode(test);
String test_dec = decode(test_enc);
System.out.println(test);
System.out.println(test_enc);
System.out.println(test_dec);
}
public static String decode(String toDecode) {
byte[] bytesDecoded = decoder.decode(toDecode.getBytes());
String decoded = new String(bytesDecoded);
return decoded;
}
public static String encode(String toEncode) {
byte[] bytesEncoded = encoder.encode(toEncode.getBytes());
String encoded = new String(bytesEncoded);
return encoded;
}
}
简单:
Base64.Encoder encoder = Base64.getEncoder();
Base64.Decoder decoder = Base64.getDecoder();
我试图找到一种使用 java.util.Base64.Encoder 和解码器 类 来编码和解码字符串的方法。不幸的是,静态调用编码和解码方法是不可能的,所以我创建了对编码器和解码器的引用 类。但是为了为这些引用中的每一个创建一个实例对象,我需要将一些参数转换为构造函数。老实说,我什至不知道我可以向他们提出什么论据。 API 文档保持沉默 https://docs.oracle.com/javase/8/docs/api/java/util/Base64.Encoder.html。下面是我几乎可以工作的示例,由于缺少编码器实例而抛出 NullPointerException。
import java.util.Base64.Encoder;
import java.util.Base64.Decoder;
public class NumberCipher {
private static Encoder encoder;
private static Decoder decoder;
public static void main(String[] args) {
String test = "There is no clue about Batman and Robin tryst at 43 Joker Street Motel.";
String test_enc = encode(test);
String test_dec = decode(test_enc);
System.out.println(test);
System.out.println(test_enc);
System.out.println(test_dec);
}
public static String decode(String toDecode) {
byte[] bytesDecoded = decoder.decode(toDecode.getBytes());
String decoded = new String(bytesDecoded);
return decoded;
}
public static String encode(String toEncode) {
byte[] bytesEncoded = encoder.encode(toEncode.getBytes());
String encoded = new String(bytesEncoded);
return encoded;
}
}
简单:
Base64.Encoder encoder = Base64.getEncoder();
Base64.Decoder decoder = Base64.getDecoder();