2

我正在使用 JDK 1.6 并在尝试编码/解码法语单词时遇到问题。我的代码在:

String setText = "Vos factures impayées Internet sont";
String encodedText= Base64.encode(setText.getBytes());
Base64.decode(encodedText);
System.out.println("Encoded String: " + encodedText);
byte[] result =  Base64.decode(encodedText);
String decodedString = new String(result);
System.out.println("Decoded: " + decodedString);

结果是: Original String Vos factures impayées Internet sont

编码字符串:Vm9zIGZhY3R1cmVzIGltcGF577+9ZXMgSW50ZXJuZXQgc29udA==

解码:Vos factures impay�es Internet sont

问题:在解码字符串时,我得到“�”特殊字符而不是“é”

4

1 回答 1

0

我没有 java 1.6,但尝试明确指定编码不依赖于平台设置,就像这样。也许会有所帮助。

String decodedString = new String(result, "UTF-8");

如果您分享您使用的是哪个软件包Base64以及出于什么原因,那就太好了?如果您使用它,xml答案可能会有所不同。

于 2019-10-24T17:01:49.587 回答