小编Ide*_* Sá的帖子

使用 ZipOutPutStream Java 压缩(zip)文件列表

我正在尝试压缩在字符串上转换的 Xml 列表,将它们仅保存在一个 zip 文件中,并在 Restful 上作为 POST 的正文返回。但是每次我保存文件时,我都会收到错误消息“存档格式未知或已损坏”。

protected ByteArrayOutputStream zip(Map<String, String> mapConvertedXml) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ZipOutputStream zos = new ZipOutputStream(baos);
    try {
        for(Map.Entry<String, String> current : mapConvertedXml.entrySet()){

            ZipEntry entry = new ZipEntry(current.getKey() + ".xml");
            entry.setSize(current.getValue().length());
            zos.putNextEntry(entry);
            zos.write(current.getValue().getBytes());
            zos.flush();
        }

        zos.close();

    } catch (IOException ioe) {
        ioe.printStackTrace();
    }
    return baos;
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我吗?

java xml rest bytearrayoutputstream zipoutputstream

5
推荐指数
1
解决办法
657
查看次数

标签 统计

bytearrayoutputstream ×1

java ×1

rest ×1

xml ×1

zipoutputstream ×1