java 从后台下载xlsx格式excel 发现不可读取内容的解决方案

本文主要介绍了在Java后台生成或下载xlsx格式Excel文件时遇到内容不可读取的问题及其解决方案。针对从服务端下载模板和程序内生成workbook两种场景,提出了设置Content-Length、使用ByteArrayOutputStream转换为byte数组的方法,以确保文件正确导出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


这种问题是因为没加 Content-Length


需求1:从服务端下载excel模板

这个好办,找到服务端保存的模板,getResourceAsStream拿到输入流,设置Content-length

注意输入流的大小是

public int available() throws IOException {
    return 0;
}

这个方法

response.setHeader("Content-Length", String.valueOf(resourceAsStream.available()));

这样就不会报截图的错了


需求2:在程序里生成了workbook导出

这个有点麻烦,因为workbook只提供了write

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值