二进制文件作为字符串读入并存储为Base64

时间:2013-03-07 00:07:37

标签: java android string base64 binaryfiles

我的遗留程序存在问题。程序从磁盘读取文件作为字符串,并将文件编码为Base64并将文件保存到磁盘。问题是读入的文件是二进制文件。有没有办法扭转这个过程?

以下是令人讨厌的代码行:

String sig = android.util.Base64.encodeToString(
    utility.readFileAsString(file.getPath()).getBytes(),
    android.util.Base64.DEFAULT);

我们已更新应用程序以字节为单位读取文件,但这对已创建的文件没有帮助。

非常感谢任何帮助......

1 个答案:

答案 0 :(得分:1)

你可以将文件Base64解码为Strings,然后调用String.getBytes()或String.getBytes(charset),如果你知道使用了什么charset utility.readFileAsString(),但你必须接受许多概率如果不是所有文件都已损坏。