【问题标题】:JAVA Apache poi Excel corruptJAVA Apache poi Excel 损坏
【发布时间】:2017-05-26 03:59:30
【问题描述】:

我在 java 中使用 Apache poi 库来生成 Excel 报告。

为了生成 excel 报告,我正在读取使用 PIPE 分隔的文本文件并将其写入 excel 表。

大多数情况下都说 98%,我没有发现任何问题。有时生成的excel文件无法打开。说“不可读的内容”。

我正在通过在文本文件中的数据中添加/删除一个或两个字符(即 XX 或 AA)来解决此问题。我比较了工作的数据文件和损坏的数据文件。我看不出有什么不同。

我不确定这个问题可能是什么原因。将数据写入 excel 文件时,我没有看到任何异常或错误。

数据文件有数千行,源代码有大约 15 个类,每个类大约 300 到 400 行。因此,很难同时发布两者。共享部分提要或课程是不值得的,因为任何添加/删除字符都会使工作表可读

此 excel 报告有 10 到 15 张工作表和多种格式和单元格合并以及公式。

有人对此有什么建议吗?阅读或写作时是否有可能出现记忆问题。文件逐行读取,逐页写入。

【问题讨论】:

  • 请向我们展示您的代码,输入文件。如果没有,我们如何提供帮助
  • “我正在通过在文本文件中的数据中添加/删除一个或两个字符(即 XX 或 AA)来解决此问题。我将工作的数据文件比较为以及损坏的。我根本看不出有任何区别。”:现在您真的认为有人在这里,既没有代码也没有数据,但仍然可以解决您的问题?那一定是个巫师,不是吗?
  • 我知道,在没有源代码/提要数据的情况下寻求建议真的很愚蠢。原因是两者都很大。数据文件有数千行,源代码有15到20个类文件,不包括库文件。
  • 我能给你的最好建议是检查这些额外的字符是否会导致程序在if 语句中选择另一个分支。也许一种情况会导致问题,而由额外字符触发的另一种情况会做正确的事情。

标签: java excel apache-poi


【解决方案1】:

我浏览了整个应用程序,但找不到任何痕迹。因此,我将应用程序从 Apache poi HSSF 升级到 Apache poi XSSF,并重构了应用程序中解决此问题的所有方法。

【讨论】:

    猜你喜欢
    • 2019-02-02
    • 1970-01-01
    • 2021-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-21
    • 2016-04-12
    • 2017-04-18
    相关资源
    最近更新 更多