2

libreoffice を使用して、.xlsb (新しい Excel バイナリ形式) ファイルを .xls (古い Excel 形式) に変換し、.xls を予期する他のコードで解析します。通常、次のコマンド ラインが機能します。

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

これにより、出力ファイルが書き込まれますf.xls。私はこれをしばらくの間うまく使用してきました (コードから駆動されるため、正しいコマンドラインを忘れたわけではありません)。

しかし、コマンドは機能しているように見えますが、ファイルf.xlsは Excel 形式ではなく、OpenDocument スプレッドシート (LibreOffice のネイティブ形式) です。何かが原因で、プログラムは指定された宛先形式を無視します。

これは、Fedora 提供の libreoffice パッケージを使用する Fedora 20 上にあります。それを打破するために何が変わったでしょうか?

4

1 に答える 1

6

libreoffice-xsltfilterパッケージをインストールすると壊れます。他の何かの依存関係の一部としてそれをインストールしました。出力されたメッセージの違いによって、変換が正しく機能しているかどうかがわかります。xls に正しく変換されている場合は、

convert /dir/f.xlsb -> /dir/f.xls using MS Excel 97

ただし、変換が壊れている場合は、メッセージが表示されます

convert /dir/f.xlsb -> /dir/f.xls using

出力は Excel 形式ではなく OpenDocument 形式です。

于 2015-02-25T16:18:31.700 に答える