使用 POI 事件 api 检索单元格样式信息(特别是颜色)

发布于 2024-10-25 14:31:49 字数 216 浏览 0 评论 0原文

我正在尝试创建一个使用 POI 和 java 读取现有 xls 文件(我们不控制文件创建)的 Web 应用程序。

上传文件的大小相当大,因此目标是使用事件驱动的 Excel 解析 API。

我无法找到任何 API 来使用事件驱动方法访问单元格颜色。

然而,上传的 Excel 有一些基于单元格颜色的逻辑。

任何人都知道我该怎么做?

谢谢!

Am trying to create a web application which reads an existing xls file(we do not control file creation ) using POI and java.

The size of the uploaded file is quite large so the goal is to use event driven excel parsing APIs.

I was not able to find any API to access cell colors using the event driven approach.

However the uploaded excels have some logic based on the cell colors.

Any one has an idea how I can go about it?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无远思近则忧 2024-11-01 14:31:49

您可能需要一个 FormatTrackingHSSFListener - 它将在经过时获取适当的格式和样式记录。当事件 API 为您提供单元格记录时,您将能够使用格式侦听器来获取样式。

如果您查看 Apache Tika 中的 ExcelExtractor,您将看到一个使用 FormatTrackingHSSFListener 来获取单元格样式和基于该单元格样式中应用的格式的格式数字的示例:
https://svn.apache.org/repos/asf/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ExcelExtractor.java

对于颜色您将需要使用类似的东西 - ExtendedFormatRecords 保存颜色索引。

You probably want a FormatTrackingHSSFListener - that will grab the appropriate formatting and style records as they go past. When you the event API gives you a cell record, you'll be able to use the formatting listener to get at the style.

If you look at ExcelExtractor from Apache Tika, you'll see an example of using a FormatTrackingHSSFListener to get the cell style and format numbers based on the format applied in that cell style:
https://svn.apache.org/repos/asf/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ExcelExtractor.java

For colours you'll want to use something similar - the ExtendedFormatRecords hold the colour indexes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文