您正在对 字符串进行 base64编码吗?你想做什么?您首先需要将字符串转换为字节序列,然后选择一种编码,例如UTF-8或UTF-16。
我的猜测是您设法在双方上使用了不同的编码。Java
String.GetBytes()使用默认字符集(在西方Windows版本上可能类似于Latin1)。对于C#,您没有发布相关代码。
要解决此问题,请选择一种编码,并在两侧明确使用它。我建议使用
UTF-8。
在Java方面,您应该使用正确的编码方法,因此您不会以“修饰的UTF-8”结尾,但是由于我不是Java程序员,所以我不知道哪些方法会输出修饰的UTF-8
。我 认为 只有在您滥用某些内部序列化方法时才会发生。
有符号和无符号字节在这里不相关。中间字节缓冲区将有所不同,但是原始字符串和base64字符串在两侧应相同。



