0

我正在尝试使用 GZIP 压缩的字节数组发送邮件,然后用 **.csv.gz 重命名它。但是,我无法打开 **.csv 文件,它显示文件已损坏。

我通过以下代码发送它:

ByteArrayOutputStream obj = new ByteArrayOutputStream();
gzipOS = new GZIPOutputStream(obj);
gzipOS.write(content.getBytes());//content is csv format
byte[] data = obj.toByteArray();
return data;

我尝试了许多 mime 类型,但它不起作用:

DataSource dataSource2 = new ByteArrayDataSource(data, "text/plain");  
messageBodyPart = new MimeBodyPart();
messageBodyPart.setDataHandler(new DataHandler(dataSource2));
messageBodyPart.setFileName("kk.csv.gz");

此附件发送成功,但是当我用 7-zip 打开它并尝试压缩它时,它显示此文件已损坏

有没有办法解决这个问题?

我认为这是由我用 **.csv.gz 重命名它时的格式引起的,但 **.csv.gz 是必要的。

温馨提示:磁盘是不允许保存文件的,所以我用这种方式发送。

4

0 回答 0