libreoffice --convert-to xls 改为写入 OpenDocument 格式
libreoffice --convert-to xls writes OpenDocument format instead
我使用 libreoffice 将 .xlsb(新 Excel 二进制格式)文件转换为 .xls(旧 Excel 格式),以便使用其他需要 .xls 的代码来解析它们。以下命令行通常有效:
libreoffice --headless --invisible --convert-to xls f.xlsb
这将写入一个输出文件 f.xls
。我已经成功使用了一段时间(代码驱动,所以不是我忘记了正确的命令行)。
但现在我发现该命令似乎有效,但文件 f.xls
根本不是 Excel 格式,而是 OpenDocument 电子表格(LibreOffice 的本机格式)。某些原因导致程序忽略指定的目标格式。
这是在 Fedora 20 上使用 Fedora 提供的 libreoffice 软件包。可以改变什么来打破它?
如果安装了 libreoffice-xsltfilter
包,它就会中断。我已经将其安装为其他依赖项的一部分。您可以通过打印的消息中的不同来判断转换是否正常工作。如果它正确转换为 xls,您会看到
convert /dir/f.xlsb -> /dir/f.xls using MS Excel 97
但如果转换中断,您会看到消息
convert /dir/f.xlsb -> /dir/f.xls using
并且输出是 OpenDocument 格式而不是 Excel 格式。
我使用 libreoffice 将 .xlsb(新 Excel 二进制格式)文件转换为 .xls(旧 Excel 格式),以便使用其他需要 .xls 的代码来解析它们。以下命令行通常有效:
libreoffice --headless --invisible --convert-to xls f.xlsb
这将写入一个输出文件 f.xls
。我已经成功使用了一段时间(代码驱动,所以不是我忘记了正确的命令行)。
但现在我发现该命令似乎有效,但文件 f.xls
根本不是 Excel 格式,而是 OpenDocument 电子表格(LibreOffice 的本机格式)。某些原因导致程序忽略指定的目标格式。
这是在 Fedora 20 上使用 Fedora 提供的 libreoffice 软件包。可以改变什么来打破它?
如果安装了 libreoffice-xsltfilter
包,它就会中断。我已经将其安装为其他依赖项的一部分。您可以通过打印的消息中的不同来判断转换是否正常工作。如果它正确转换为 xls,您会看到
convert /dir/f.xlsb -> /dir/f.xls using MS Excel 97
但如果转换中断,您会看到消息
convert /dir/f.xlsb -> /dir/f.xls using
并且输出是 OpenDocument 格式而不是 Excel 格式。