MyNixOS website logo
Description

Convert Open Document Spreadsheet ODS to CSV.

Usually you would convert ODS to CSV via libreoffice --headless but this conflicts with running GUI instances of libreoffice and requires a full libreoffice installation and has incomprehensible CSV export command-line options and selection of individual tables is inferior.

This program quickly scans through a FODS or ODS document using a XML parser and watches only the necessary data. It does not interpret or evaluate the formula data, instead it assumes that the contained evaluated values are correct. This is true, if the file was saved from LibreOffice but might not be true if generated or manipulated by other tools.

You can feed generated CSV files to LaTeX datatool.sty, csvmidi, or csvreplace from Haskell package spreadsheet.

Example runs of the program:

ods2csv --list-tables input.ods
ods2csv --sheetnumber=1 input.ods >output.csv
ods2csv --sheetname="Table 2" --separator=TAB input.ods >output.tsv
ods2csv --sheetnumber=2 input.fods >output.csv
ods2csv --sheetnumber=2 <input.fods >output.csv

The program supports UTF-8 encoding for FODS/XML input, and applies Latin1 decoding otherwise. For writing CSV it uses the system's default encoding.

ToDo: Provide FODS parser as library function, maybe in spreadsheet.

Metadata

Version

0.1

Executables (1)

  • bin/ods2csv

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows