我使用libreoffice将.xlsb (新Excel二进制格式)文件转换为.xls (旧Excel格式),以便使用其他期望.xls的代码解析它们。以下命令行通常可以工作:
libreoffice --headless --invisible --convert-to xls f.xlsb
这将写入输出文件f.xls。我成功地使用这个命令已经有一段时间了(由代码驱动,所以不是因为我忘记了正确的命令行)。
但是现在我发现这个命令似乎有效,但是文件f.xls根本不是OpenDocument格式,而是一个OpenDocument电子表格(LibreOffice的本机格式)。某些原因导致程序忽略指定的目标格式。
这是在Fedora 20上使用Fedora提供的libreoffice包。会有什么改变来打破它呢?
发布于 2015-02-25 16:18:31
如果安装了libreoffice-xsltfilter包,它就会中断。我已经安装了它,作为其他东西的依赖关系的一部分。您可以通过打印的消息中的差异来判断转换是否正常工作。如果它正确地转换为xls,您将看到
convert /dir/f.xlsb -> /dir/f.xls using MS Excel 97
但是,如果转换中断,您将看到消息。
convert /dir/f.xlsb -> /dir/f.xls using
输出采用OpenDocument格式,而不是Excel格式。
https://stackoverflow.com/questions/28724087
复制相似问题