问题标签 [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 投票
2 回答
2166 浏览

java - 在 Java 10 中使用 Apache Poi 4 时出错

我想提一下,当我使用 Java 8 时,整个过程运行得非常好。但是当我使用 Java 10 尝试相同的过程时,我收到了一个很大的错误消息。

我知道 poi 3.17 与 Java 10 有问题,但是由于https://bz.apache.org/bugzilla/show_bug.cgi?id=62187 - poi 4 的开发人员说现在应该可以运行 poi 4使用 java 10,我很困惑,不知道如何解决我的问题?

0 投票
1 回答
215 浏览

apache-poi-4 - poi 4 移动行给出错误但为 poi 3 工作

嗨,我最近从 poi 3 迁移到 poi 4。我正在移动表中的一些行并插入新行。在我的工作表中,我正在向其中插入行的表下方有一些表,并且我正在更新这些表的引用。此代码适用于 poi 3。我最近转移到 poi 4,此代码已开始损坏文件。我怀疑的麻烦制造者是更新参考部分。请让我知道我错过了什么。

0 投票
2 回答
6632 浏览

java - Apache POI poi-ooxml:4.0.0 抛出 org.apache.poi.ooxml.POIXMLException

语境:

尝试使用 Apache POI 的 poi 和 poi-ooxml 4.0.0 版本 jar 打开 XLSX 文件

问题:

程序抛出错误,如下所示。我在使用 4.0.0 版本时发现此错误,因为我能够使用 3.17 或更早版本打开 excel 文件。

希望面临的问题很清楚并等待有关如何解决此问题的意见。

注意:找到了一些相关的查询,但它们与 POI 的早期版本有关 - Link1 Link2

代码:

摇篮:

错误:

0 投票
1 回答
693 浏览

java - 系列 setTitle 的 apache-poi 4.0 NullPointer

org.apache.poi.xddf.usermodel.chart.XDDFChartData$Series.setTitle(XDDFChartData.java:122) 的线程“主”java.lang.NullPointerException 中的异常

代码如下:

我检查了文档,它需要一个字符串 forarg0和一个CellReferencefor arg1

我一直以NullPointerException. 我错过了什么吗?

感谢您的回复。

0 投票
0 回答
158 浏览

apache-poi - 无法解析符号“AbstractJExcelView”

我正在编写一个简单的 spring mvc 应用程序,它以 xls 格式编写内容:

我尝试使用以下方法导入“AbstractJExcelView”类:

它显示以下内容:

找不到符号“AbstractJExcelView”

我在 pom.xml 中包含了依赖项:

有什么我应该改变的吗?

0 投票
0 回答
38 浏览

apache-poi - 如何使用 Apache POI 从头开始​​创建 PowerPoint?

我似乎无法创建这样的PPT。任何帮助表示赞赏。谢谢。

0 投票
0 回答
192 浏览

ms-word - 获取 xwpf 行、单元格、段落的当前高度

我正在使用 XWPF 读取包含表格的 .docx 文件。在这个表中,我得到行然后单元格,然后我在里面添加一个段落,在这个段落中我添加多个运行(具有不同的字体样式)

我的问题是(我知道当单词添加新页面或超出我的范围时我无法获得......?)但我想要实现的是在我的 tableRow 或 tableCell 循环中获取当前高度是这可能吗?我的意思是这样的 squelette 代码

我尝试使用 tableRow.getHeight() 来获取行高,但它总是为 0,有人知道获取行、单元格或段落的高度吗?

0 投票
1 回答
6203 浏览

java - Apache POI 4.0:来自 java.awt.Color 的 XSSFColor

org.apache.poi 4.0删除了XSSFColor只使用java.awt.Color. 只需org.apache.poi 3.7编写即可轻松创建对象

但是,此构造函数在 4.0 中不再有效。https://poi.apache.org/apidocs/dev/org/apache/poi/xssf/usermodel/XSSFColor.html上的文档显示了其他几个构造函数,但理想情况下我想更改尽可能少的行。

所以,我的问题是,XSSFColorjava.awt.Color现在开始创建的最佳方法是什么(在 apache poi 4.0 中)?


根据评论中的要求,这是我的测试代码,使用建议style.setFillForegroundColor(new XSSFColor(java.awt.Color.RED, null)); 使用 LibreOffice 6.1 打开它会产生错误(尝试修复,然后失败)。注释掉正常工作的 POI 3.7 版本。

解决方案:
替换fileout.close();bos.close();,它可以工作。因此tempBodyStyle.setFillForegroundColor(new XSSFColor(Color.RED,null));,正如 Alex Richter 在评论中所建议的那样,这是一个很好的解决方案,并且会接受这个作为答案。

0 投票
3 回答
3224 浏览

selenium - 添加 Apache POI 4.0.1 库不足以使用 XSSFWorkbook

我使用以下教程来实现 Selenium 关键字驱动框架:http ://toolsqa.com/selenium-webdriver/keyword-driven-framework/set-excel-apache-poi/

对于要求使用 ExcelUtils 类创建“util”包的部分,我按照说明开始,将 jar 添加到项目库中。

这个 jar 用于库 apache-poi-4.0.1:poi-4.0.1.jar。

但即使有这个库和它的附加源,XSSFWorkbook、XSSFSheet 和 XSSFCell 类也不存在。

所以我的问题是,我错过了 tuto 的哪一部分?或者我错过了哪个图书馆?

我正在使用带有 JRE JavaSE-1.8 的 Eclipse Oxygen

软件包实用程序;

导入 java.io.FileInputStream;

0 投票
2 回答
1313 浏览

java - 为什么在 XSSFRow 中使用 copyRowFrom(...) 时出现 IllegalArgumentException?

我正在尝试使用copyRowFrom(...);将电子表格的第一行复制到新 XSSFSheet 的第一行,但有些东西无法正常工作。你可以在这里找到 XSSFRow 类和方法: https ://github.com/apache/poi/blob/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFRow.java#L581

来自IllegalArgumentException("amountToMove must not be zero")FormulaShifter.java:https://github.com/apache/poi/blob/trunk/src/java/org/apache/poi/ss/formula/FormulaShifter.java#L80

似乎问题出在 XSSFRow 的第 623 行,其中FormulaShifter.createForRowCopy(...)使用参数调用,rowDifference = 0因为源行为 0,目标行为 0: https ://github.com/apache/poi/blob/trunk/src/ooxml/java/org /apache/poi/xssf/usermodel/XSSFRow.java#L623

我不知道,也许这是一个错误,但是当到达 FormulaShifter.java 中的第 80 行时,参数 rowDifference 对应于为 0 的 amountToMove,因此它会引发 IllegalArgumentException。

我是否遗漏了什么,或者这是copyRowFrom(...);XSSFRow 中的方法错误?