问题标签 [xssf]

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 回答
1771 浏览

date - 如何使用 Apache POI XSSF 事件模型检查日期是否使用 1904 窗口

我正在编写一个使用 Apache POI 事件模型(SAX/XSSF)导入 xlsx 文件的程序。我快完成了,但我无法得到正确的日期。

我正在解析具有日期值的单元格

我正在使用org.apache.poi.ss.usermodel.DateUtil课程来获取日期:

我应该通过什么use1904windowing来获得正确的日期?我暂时使用false,因为这为我的测试工作簿提供了正确的日期,但我知道我应该从某个地方读取该值。

有一条DateWindow1904Record二进制 xls 格式的记录,我使用 HSSF 读取。它在 XSSF 中的对应物是什么?还是我应该一直使用false

编辑:@rgettman 回答为我指出了解决方案,但它并不完整。在事件模型中,您没有 xssfWorkbook 对象,您不能只获取它的 getCTWorkbook()。

相反,您可以直接从 InputStream 创建 CTWorkbook:

0 投票
1 回答
6134 浏览

apache-poi - 在禁用显示注释的情况下在 apache poi(用于 .xlsx 文件)中创建单元格注释

我正在尝试使用 apache poi 创建单元格注释。我可以创建评论,但默认情况下它们总是显示在 excel 中。我必须手动右键单击单元格并取消勾选显示评论以使其不可见(现在它们仅在我将鼠标悬停在单元格上时才会出现)。是否可以默认使单元格注释不可见(以便在用户将鼠标悬停在单元格上之前它们不会出现在 Excel 中。)

这是我使用的代码:

0 投票
3 回答
7938 浏览

java - 为什么 Apache POI OPCPackage close() 方法不能保存/写入内容以打开可写文件?

使用以下代码,不会保存对我的 Excel 电子表格所做的单元格值更改:

以下是我写的解决方法,但我不明白为什么它是必要的。

该主题的 javadocs 和指南表明 .close() 方法应该保存并关闭。在关闭之前检查修改的单元格的值表明已进行更改,但仅 pkg.close() 方法不足以在关闭时将这些更改写入文件。

0 投票
1 回答
20096 浏览

java - java.lang.IllegalArgumentException:您的 InputStream 既不是 OLE2 流,也不是 OOXML 流

当我阅读 Excel 文件(.xls 格式)时,我不断收到异常:

我搜索了一下,发现如果输入流不支持重置或标记,我应该用pushbackStream. 我的输入流不支持标记\重置。

那么使用pushbackStream是唯一的选择吗?如何使用它?它有什么用?

谢谢

0 投票
0 回答
790 浏览

java - apache poi XSSF Excel 需要很长时间才能打开

我正在使用 Apache poi 3.8 读取 xlsx 文件,它可以正确执行所有操作,但最后在打开 xlsx 文件时,需要很长时间。首先它会创建一个空白的 Excel 表格,大约 5 分钟后它会在表格中加载数据。但是在使用 xls 时,不需要这么长时间,文件会在几秒钟内打开。

你能帮帮我吗?

谢谢

0 投票
0 回答
2644 浏览

java - 如何在 apache poi XSSF usermodel 中使用 setShapeType 画线

我正在更新代码以使用 3.8 poi,因此我将代码从 HSSF 更改为 XSSF。我在 HSSF 中将 setShapeType 设置为 OBJECT_TYPE_LINE,如何更改 XSSF 用户模型的 setShapeType。我需要使用 XSSF 画一条线。这是我的代码,

谢谢

0 投票
1 回答
4604 浏览

java - 如何更改 XSSFTextBox 上的字体

XSSFTextBox 和 XSSFRichTextField 的

编辑见评论;Apache POI 似乎是种族主义者,不支持黑人?红色是?

编辑 2:在字体中使用常量而不是使用 XSSFColor,它们有红色和黑色;查看默认字体(只是为了清楚代码现在正确显示颜色和大小,但字体名称/实际字体仍然是错误的。所以 Font.COLOR_NORMAL 适用于 dat black)

出于某种原因,我无法让我的 XSSFTextBoxs 文本的字体和字体颜色从它们(我假设)默认的 Calibri 白色(为什么默认为白色?!?)。我改变了它们的大小,但它们的字体和字体颜色保持默认值。我发现这是以前的错误,应该在这里修复。

我一直在查看参考资料,以了解我如何更改字体,看起来它就是这样做的,但它似乎不起作用;我希望对此有另一种看法,还有其他一些小问题我仍在摆弄,但字体实现是目前最重要的事情;欢迎和通缉任何批评!

真正让我恼火的是,我之前使用过 XSSFFont 和 XSSFCellStlyes,相当广泛,并且在更改字体或颜色时从未遇到任何问题,更不用说其他任何问题了,所以我不知道这是否是一些奇怪的行为,我不是看到或者我在这里做错了什么。

代码

0 投票
0 回答
118 浏览

apache-poi - .xlsx 文件中缺少内容

所以我们有一些标准.xlsx模板,当通过 Conga Composer 合并时,会给出一个输出.xlsx文件。问题是此输出文件缺少原始模板文件中的内容。这个问题只有在我们创建一个XSSFWorkbook. 当我们将输入模板保存为.xls文件时,输出与输入相同,没有任何丢失的内容。

我想知道为什么只有在 .xlsx 模板的情况下才会观察到这种行为。

我很乐意提供有关任何其他有帮助的代码片段的更多详细信息。

提前致谢。

0 投票
2 回答
2256 浏览

excel - Apache POI - 生成引用其他单元格的条件格式

我正在使用 Apache POI 在 Java 中生成 XSSF 电子表格。我要做的是生成一个条件格式公式,类似于“如果单元格 $A2="X" 中的值,则将 $C2 变为绿色”,然后将其一直应用到 C 列。

不过,我还没有在网上看到任何这样的例子——我看到的所有例子一次只处理一列,而不是参考。有可能吗?

条件格式示例

0 投票
0 回答
672 浏览

excel - XSSF 保存工作簿

我正在使用 XSSF 创建工作簿并不断收到此错误:

Excel 在“thefile”.xlsx 中发现了不可读的内容。是否要恢复此工作簿的内容?如果您信任工作簿的来源,请单击是。Excel 然后通过删除所有数据来恢复它并给出详细的错误报告:删除记录:来自 /xl/worksheets/sheet1.xml 部分的单元格信息

我遵循以下原则: 确保该行已创建且不为空。确保单元格已创建且不为空。确保单元格是正确的类型。写入单元格。

有什么我遗漏的吗,例如是否允许仅连续写入某些单元格,例如:

|null|null|在这里写点东西|null|null|

与行相同:


有内容的行


无效的


有内容的行


还是我需要确保所有行和列在使用的范围内都填空。这是一个完全的谜。