Java 解码Mac中使用base64编码的文件

Java 解码Mac中使用base64编码的文件,java,macos,unix,decode,encode,Java,Macos,Unix,Decode,Encode,我有一个在mac book中编码为Base64的文件- base64 cwallet.sso > cwallet.base64.sso 如何使用Java解码此文件 我尝试使用下面的代码,但是生成的文件的大小几乎是原始“cwallet.sso”文件的两倍。当我使用base64-D cwallet.base64.sso>cwallet.original.sso编码时,我得到的文件大小与cwallet.sso的文件大小相同 Java代码 File file = new File("<pa

我有一个在mac book中编码为Base64的文件-

base64 cwallet.sso > cwallet.base64.sso
如何使用Java解码此文件

我尝试使用下面的代码,但是生成的文件的大小几乎是原始“cwallet.sso”文件的两倍。当我使用
base64-D cwallet.base64.sso>cwallet.original.sso
编码时,我得到的文件大小与cwallet.sso的文件大小相同

Java代码

File file = new File("<path>/cwallet_newfile.sso");
        String contents = FileUtils.readFileToString(new File("<path>/cwallet_base64.sso"), "UTF-8");
        byte[] decodedBytes = Base64.getDecoder().decode(contents.trim());
        String decodedString = new String(decodedBytes);
        FileUtils.write(file,decodedString,"UTF-8");
File File=new文件(“/cwallet_newfile.sso”);
String contents=FileUtils.readFileToString(新文件(“/cwallet_base64.sso”),“UTF-8”);
字节[]decodedBytes=Base64.getDecoder().decode(contents.trim());
字符串decodedString=新字符串(decodedBytes);
write(文件,解码字符串,“UTF-8”);
不要将(可能的)二进制文件转换为UTF-8
字符串
;而是用like编写
字节[]

byte[] decodedBytes = Base64.getDecoder().decode(contents.trim());
// String decodedString = new String(decodedBytes);
// FileUtils.write(file,decodedString,"UTF-8");
FileUtils.writeByteArrayToFile(file, decodedBytes);