OpenOffice 将空单元格保存在 xlsx 中

Posted

技术标签:

【中文标题】OpenOffice 将空单元格保存在 xlsx 中【英文标题】:OpenOffice saves empty cells in xlsx 【发布时间】:2014-05-29 23:26:04 【问题描述】:

我正在用 php 处理 xlsx 文件。当我使用只有一个填充单元格的 openoffice 创建 xlsx 文件时,电子表格本身已经有 65536 行。看起来 openoffice 存储所有单元格,即使它们是空的。有什么解决方案我可以只保存填充的行/列吗?因为每个解析 xlsx 的库都会产生错误的行数,所以我无法正确处理它。好的解决方案是直接在 openoffice 中实现,或者尽可能使用一些外部工具/脚本(基于 *nix)来清理此类 xlsx 文件。

【问题讨论】:

看来LibreOffice可以保存为XLSX,OpenOffice不能。 【参考方案1】:

这是一种解决方案:

使用OpenTBS 打开 XLSX 并保存,无论是否修改。

OpenTBS 是一个纯 PHP 工具,其目的是使用模板技术将数据与 LibreOffice 和 Ms Office 文档合并。

从 1.9.0 版开始,OpenTBS 可以处理使用 LibreOffice 制作的 XLSX 工作簿。此类 XLSX 工作簿可能有一个额外的行定义,其中包含一个重复属性,该属性根据行数的最大限制对其进行扩展。 OpenTBS 只是将这个额外的扩展行缩减为一行。

OpenTBS download page OpenTBS demo OpenTBS doc

【讨论】:

以上是关于OpenOffice 将空单元格保存在 xlsx 中的主要内容,如果未能解决你的问题,请参考以下文章

使用 Apache Poi 如何创建多值电子表格单元格,以便在 MS Excel 中正确显示,而不仅仅是 OpenOffice

LibreOffice/OpenOffice 能否以编程方式向现有的 .docx/.xlsx/.pptx 文件添加密码?

由 EPPlus 4.1 库以 .xlsx 格式创建的图表未在 openoffice 或 libreoffice 中显示

OpenOffice Calc - 超链接下拉列表

读取 OpenOffice xlsx 文件中的数据,然后使用 python 转换为列表

从 JAVA 使用 LibreOffice/OpenOffice 转换文件格式