尝试设置响应头编码为UTF-8,确保文件名和内容都是UTF-8编码。如果问题依旧,检查Linux系统的语言环境设置是否正确。
当在Linux环境下使用POI生成Excel文件时,如果出现了内容乱码的问题,可能是由于字符编码设置不正确导致的,下面是一些可能的解决方法:
1、检查文件编码格式
确认你的Excel文件的编码格式是否正确,在Linux系统中,可以使用命令file -i filename.xlsx来查看文件的编码格式,确保文件的编码格式与Excel期望的编码格式一致。

2、设置字符编码
在使用POI生成Excel文件时,可以通过设置字符编码来避免乱码问题,在创建Workbook对象时,可以指定字符编码,
Workbook workbook = new XSSFWorkbook(OPCPackage.getPackage().getPackagePart().getInputStream(), "UTF-8");
3、检查字体支持
如果Excel文件中使用了特殊的字体,而该字体在Linux系统上未安装或不受支持,则可能导致内容显示为乱码,可以尝试使用其他字体或将字体文件安装在Linux系统上。
4、检查操作系统语言环境
确保Linux系统的默认语言环境与Excel文件的语言一致,可以通过修改/etc/locale.conf文件来设置系统的默认语言环境。

5、检查Tomcat配置
如果问题仅在使用Tomcat服务器时出现,可能需要检查Tomcat的配置文件,确保Tomcat的连接器(Connector)配置中设置了正确的字符编码。
相关问题与解答:
Q1: 如何检查Linux系统上的字体支持情况?
A1: 可以使用命令fc-list来列出系统上已安装的字体,如果没有找到所需的字体,可以尝试安装字体或替换为其他字体。
Q2: 如果修改了Tomcat的配置文件后仍然出现乱码问题,应该如何进一步排查?

A2: 可以尝试在Tomcat启动脚本中添加-Dfile.encoding=UTF-8参数,以确保Tomcat使用正确的字符编码,还可以查看Tomcat的日志文件,以获取更多关于错误的信息。