问题标签 [apache-poi-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1261 浏览

java - Apache poi 迁移到 jdk 11 问题

我目前正在将应用程序从 jdk 8 迁移到 11,但 Apache Poi 库存在一些问题。删除了一些类、方法和常量,我无法从他们的网站上找到迁移指南。之前的版本是3.13,我升级到了4.0.1。

这是一个错误示例:

在此处输入图像描述

任何帮助将不胜感激。

谢谢

0 投票
1 回答
3517 浏览

java - 如何使用 apache poi 4.0.1 和 java 生成可编辑的堆叠条形图?

我想使用 Apache poi 4.0.1 和 Java 语言为 Excel 创建堆积条形图

  • 输出 excel 文件的扩展名应为 .xlsx
  • 生成的图表应该有图表标题和数据标签
  • 生成的图表还应该能够在每列的顶部显示所有数据的总和(您可以看到每列的总和显示在黄色框中)
  • 您可以参考下图更清楚地了解我在寻找什么。

在此处输入图像描述


  • 堆积条形图的数据

0 投票
2 回答
1499 浏览

java - 如何使用 Apache POI 4.0.1 和 java 通过在整个数据的每一侧留下一个单元格空间来设置边框

  • 目前,我可以在整个数据旁边设置边框(您可以参考下图)。

电流输出


代码片段


  • 我想在整个数据旁边设置边框,但在数据和边框之间留一个单元格空间(您可以参考下图)。

预期产出

0 投票
1 回答
2963 浏览

java - 在 apache poi 4.0.1 中读取 xls 文件时出现 NotOLE2FileException

我正在尝试使用中读取xls文件javaapache poi 4.0.1

问题

当我尝试读取文件时,我遇到了以下异常

完整的堆栈跟踪

当我尝试在 excel 中手动打开同一个文件时,出现以下对话框

在此处输入图像描述

问题

我做错了什么,我该如何解决?

代码

0 投票
2 回答
1643 浏览

java - 使用 Apache poi 在一张 Excel 表格中绘制多个折线图

我想在一张 Excel 表中生成具有不同系列的多个图表。但是,我可以使用以下代码绘制一个图表,但是当我在以下代码中创建第二个 XSSFChart 图表和 XSSFClientAnchor 锚时,它无法在 Excel 中绘制图表。如何在一个excel中绘制两个或多个折线图。以下代码有什么问题?

期望的结果.

0 投票
1 回答
1348 浏览

servlets - org.apache.poi.POIXMLDocument 类在 4.0.1 版中去了哪里?

我有一个写出电子表格的 Tomcat 应用程序,它使用以下 JAR 文件:

  • poi-3.16.jar
  • poi-ooxml-3.16.jar
  • poi-ooxml-schemas-3.16.jar

我看到有一个 4.0.1 版本的 poi,在查看https://poi.apache.org/components/时,我认为我已经设置了先决条件,但是运行时出现异常:

更新:

显然,当我构建出现上述错误的 .WAR 文件时,NetBeans 似乎找到了旧的 3.16 jar 文件并编译了我的代码,但我在服务器上没有 3.16 jar 文件。现在我已经在 NetBeans 中进行了清理,我无法在 NetBeans 中进行编译。

错误:

ExcelParser.jara 第 36 行是:

这是我的 pom.xml,引用了 4.0.1 jar:

我已经检查了我的 NetBeans .m2 存储库,并且在C:\Users\mstewart\.m2\repository\org\apache\poi\poi\andpoi\ooxml和 and中有 3.16 和 4.0.1 目录poi\ooxml-schemas

0 投票
1 回答
131 浏览

java - 如何从堆积条形图中删除未来日期

  • 我当前的 java 代码使用 Apache POI 4.0.1 生成堆叠条形图,如下图所示。
  • 我不想为将来的日期打印一行(例如:在下图中,我不希望 04/04 日期的那些零);但我希望这些日期低于 X 轴。
  • 我的问题是如何删除/禁用零线图?


代码示例

0 投票
0 回答
246 浏览

java - Java Apache POI 4.1 createPivotTable 抛出“无法从 NUMERIC 单元格获取 STRING 值”

当使用 POI 4.1 库以编程方式在 .xslx 文件中创建数据透视表时,问题就出现了。

POI 从 3.X 升级到 4.1 的一部分是删除设置单元类型。因此在 4.X 中调用和设置单元格类型是自动处理的。就我而言,我曾认为我的问题是由这种变化引起的。下面的重构示例

创建数据透视表时,使用函数 .createPivotTable() 我收到以下错误。

从代码行

我曾认为这与由于单元格创建的变化而为数据透视表格式化的数据有关。

问题最终是我的数据创建了一个原始数字单元格表,但没有任何标题。.createPivotTable() 将“第一个单元格”作为字符串调用,假设它是一个标题。这是函数的默认操作。

此默认操作应记录在函数中或编写更好的异常以阐明抛出的错误是来自数据单元格还是标题单元格。

TLDR。createPivotTable() 需要一个字符串标题来设置列名。

0 投票
1 回答
237 浏览

java - 延迟将值写入具有公式的 Excel 文件

用例:我有一个用 excel 实现的成本计算器。我必须在工作表的输入单元格中插入大量输入,并从同一个工作表中获取输出。我有 3 张类似的 excel 表,大小约为 3MB。excel 工作表为 .xlsm 格式。

使用的技术:Java 1.8 和 Apache POI 4.0.1

问题:将输入值写入大于 3MB 的 excel 文件非常快(大约 12 次输入大约需要 10 秒)。但是对 <3MB 的 excel 文件执行相同的操作太慢(仅一个输入约 10 秒)。

我似乎有些人在这里说要使用 SXSSFWorkbook。我用它替换了 XSSFWorkbook,但它给了我空指针异常。此外,这用于 100MB 以上的大型 Excel 工作表,对吗?

写入值的代码:

0 投票
0 回答
452 浏览

java - 如何使用 Java (Apache poi) 在 .doc 扩展文件上创建水印

我正在尝试在 .doc 文件和 .docx 文件上创建水印,我使用 apache-poi 4 实现了 .docx 扩展名水印。但我无法使用相同的方法重写 .doc 扩展名的代码。

我尝试将 XWPFDocument 与 HWPFDocument 交换为 .doc 扩展名,但它不会为我提供用于创建水印的页眉页脚策略对象。下面是适用于 .docx 扩展的代码片段

有没有办法使用 apahce-poi 实现 .doc 扩展文件水印?