【问题标题】:Choosing an excel java api [closed]选择一个excel java api [关闭]
【发布时间】:2010-11-10 19:53:50
【问题描述】:

我需要做的就是打开一个 MS excel 表——还不确定是哪种(2003 年、2007 年等)——然后将每一行中的信息解析为一个对象。我只执行只读操作。

Apache POIJExcelAPIOpenXLS 中哪一个最适合这项任务?

我宁愿不再了解 api,但如果您确定这些都不是最好的,那么我会采纳您的意见。

【问题讨论】:

  • JXL 警告:默认情况下它会显式调用 GC,这将导致您的超快速、高度并发性能优化的 Web 服务器停止。留一些白发,用-Djxl.nogc=true

标签: java excel apache-poi jexcelapi openxls


【解决方案1】:

我只使用过 POI,但发现它使用起来很简单,并且可以像宣传的那样工作。

【讨论】:

  • 我第二个 POI。另外,它宣传支持 2007 格式(我自己还没有尝试过,不能保证); JExcelAPI 仅支持 2003。
  • 我对 POI 的可用性印象深刻,但我不断发现库和文档之间存在不一致,这使得学习变得非常混乱。 :P
  • 在 POI 中是否有任何方法可以在 XLS 文件上设置密码?
  • @happy 它支持加密poi.apache.org/encryption.html
  • @Gambo 它加密文件内容,有没有办法在文件上设置密码,当我尝试打开文件时会提示输入密码?,就像它在 aspose 中一样,但它不是免费软件。
【解决方案2】:

我不推荐 OpenXLS。我使用了一段时间,但对免费版本的限制感到非常沮丧。例如,如果你想写公式,你就不能。除非您购买 OpenXLS 背后的公司销售的商业版本。

过去几个月我一直在使用 JExcelAPI,并且对它印象深刻。使用它来读取和写入 Excel 电子表格非常容易。文档相当不错,但可能会更好。如果您还没有做出选择,我会向您推荐 JExcelAPI。

恐怕我还没有尝试过 POI,所以我无法评论它。

【讨论】:

  • 我在哪里可以找到它的许可证信息?我想将它用于商业
  • andykhan.com/jexcelapi - “JExcelApi 是根据 GNU 宽通用公共许可证发布的。”
【解决方案3】:

我只使用过 JExcelAPI,发现它非常实用且可靠。遇到了一个奇怪的问题,但它是书面的,而不是阅读的,并且在他们的FAQ 中有明确记录(带有解决方案),所以 - 很高兴推荐它。

【讨论】:

    【解决方案4】:

    FWIW 和 Extentech(OpenXLS 的制造商)发布了一个新版本,现在支持添加公式并像这样执行它们:

    CellHandle cx = sheet.add("=sum(a1+a2)","b1");
    String val = cx.getFormulaHandle().getFormattedValue();
    

    此外,您会发现 Sheetster.com 是 Extentech 的一个开源网络电子表格,您可以在您的网络应用程序中嵌入一个不错的网络电子表格。

    【讨论】:

      猜你喜欢
      • 2013-12-09
      • 2011-05-02
      • 2012-06-09
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      • 2011-03-22
      • 2019-02-09
      • 1970-01-01
      相关资源
      最近更新 更多