libreoffice –convert-to xls写入OpenDocument格式

我使用libreoffice将.xlsb(新的Excel二进制格式)文件转换为.xls(旧的Excel格式),以便用其他需要.xls的代码parsing它们。 以下命令行通常工作:

libreoffice --headless --invisible --convert-to xls f.xlsb

这写入一个输出文件f.xls 。 我已经成功地使用了一段时间(由代码驱动,所以并不是我刚刚忘记了正确的命令行)。

但是现在我发现这个命令似乎可以工作,但是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格式。