【发布时间】:2014-12-20 12:59:07
【问题描述】:
我在尝试对从磁盘上的文件读取的字符串进行编码和解码时遇到错误的结果。
我正在使用以下代码解码然后编码:
byte[] word_bytes = new BASE64Decoder().decodeBuffer(word); //word is string variable
String tempStr = new BASE64Encoder().encode(word_bytes);
根据这段代码,我期望如果我打印“word”和“tempStr”,我应该会看到相同的结果。但是,价值观不同。
例如,如果 word = "hi!",则 tempStr = "hi//" 并且所有单字母单词都将转换为空值。例如,如果 word = "a",则 tempStr = ""。
磁盘上的文件采用UTF-8 编码。
如果有人能解释这个错误的原因,那将是非常有帮助的。
对不起,如果这是一个非常基本的问题,我在编码格式方面没有太多经验。
谢谢
【问题讨论】: