0

嗨,我有将 base64 值解码为其原始值的代码。

public class Decode {

public static void main(String[] args) throws IOException {

        String base64= "0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAGgAAAAAAAAAAEAAA/v///wAAAAD+////AAAAABkAAAD///"

        byte[] bytes = Base64.decodeBase64(base64);
        String testFileName = "tmp" +File.separator + "base64.xlsx";
        FileOutputStream fos = new FileOutputStream(new File(testFileName));
        IOUtils.write(bytes, fos);
    }
}

base64 变量是 zip 文件的编码值。我能够将其解码回其原始格式,但无法打开 zip 文件。它显示文件无效。我错在哪里。?提前致谢。

4

2 回答 2

0

Zip格式不是Base64,如果你想用java代码打开一个zip文件,你可以使用java.util.zip.ZipInputStream

于 2013-08-21T11:48:24.807 回答
0

您的 base64 字符串不包含 ZIP 文件的内容。除此之外,您必须在fis.close()完成写入后关闭 FileOutputStream ( ),但除非您从正确的数据开始,否则无论如何您都不会写入 ZIP 文件。

于 2013-08-21T11:59:48.453 回答