gpt4 book ai didi

java - Java 字符串编码和解码

转载 作者:行者123 更新时间:2023-12-01 11:29:33 24 4
gpt4 key购买 nike

我有这段代码,我试图在java中编码、解码和字符串,但遇到编译错误,这里是代码中注释了错误的代码:

public static String encrypt(String plainText, SecretKey secretKey)
throws Exception {
byte[] plainTextByte = plainText.getBytes();
cipher.init(Cipher.ENCRYPT_MODE, secretKey);
byte[] encryptedByte = cipher.doFinal(plainTextByte);
Encoder encoder = Base64.getEncoder(); //ERROR "cannot resolve method"
String encryptedText = encoder.encodeToString(encryptedByte);
return encryptedText;
}

public static String decrypt(String encryptedText, SecretKey secretKey)
throws Exception {
Decoder decoder = Base64.getDecoder(); //ERROR "cannot resolve method"
byte[] encryptedTextByte = (byte[]) decoder.decode(encryptedText);
cipher.init(Cipher.DECRYPT_MODE, secretKey);
byte[] decryptedByte = cipher.doFinal(encryptedTextByte);
String decryptedText = new String(decryptedByte);
return decryptedText;
}

感谢您提前提供帮助

最佳答案

检查您的导入并确保您正在导入:

import java.util.Base64;
import java.util.Base64.Decoder;
import java.util.Base64.Encoder;

我的 IDE 发现了看起来像几十个名为 Base64 的类,因此即使名称匹配,您也完全有可能导入了错误的类。

另请注意 java.util.Base64该类是在 java 1.8 中添加的,因此如果您使用的是旧版本,它将不可用。

关于java - Java 字符串编码和解码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30521652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com