【发布时间】:2025-12-30 08:40:07
【问题描述】:
我想将一个字符串编码为base64,然后通过套接字传输并解码回来。
但解码后给出不同的答案。
以下是我的代码,结果是“77+9x6s="
import javax.xml.bind.DatatypeConverter;
public class f{
public static void main(String a[]){
String str = new String(DatatypeConverter.parseBase64Binary("user:123"));
String res = DatatypeConverter.printBase64Binary(str.getBytes());
System.out.println(res);
}
}
你知道如何实现吗?
【问题讨论】:
-
DataTypeConverter工作得很好,原来的海报只是混合了顺序。它应该是这样的:String str = DatatypeConverter.printBase64Binary("user:123".getBytes());String res = new String(DatatypeConverter.parseBase64Binary(str)); -
parseBase64Binary() 用于解码,printBase64Binary() 用于编码。