Excel 兴趣点:"We found a problem with some content in ... " 当 Excel 少于 135 行时

Excel POI: "We found a problem with some content in ... " when the Excel has less than 135 Rows

我在使用 POI 创建 Excel 时有一个奇怪的行为。

每当我的行数少于 ~135 行时,我都无法打开 Excel,但出现以下异常:

如果我有更多行,我可以毫无问题地打开 Excel。

这是代码,我是如何创建工作表的:

val out = new ByteArrayOutputStream()
try {
    wb = createWorkbook()
    wb.writeToOutputStream(out)
    out.flush()
    out.toByteArray
} finally IOUtils.closeQuietly(out)

我使用 Scala 包装器 spoiwo

代码如下writeToOutputStream

override def writeToOutputStream[T <: OutputStream](stream: T): T =
  try {
    convertAsXlsx().write(stream)
    stream
  } finally {
    stream.flush()
    stream.close()
  }

def convertAsXlsx(): XSSFWorkbook = convertWorkbook(workbook)

我在这里添加了一个问题:https://github.com/norbert-radyk/spoiwo/issues/44

事实证明问题与 poi 无关。

删除 play-html-compressor 解决了问题。

这个sbt插件好像有bug。

(参见 play-html-compressor