Standalone Excel to csv conversion?
EML
sa212+lo at cyconix.com
Wed Apr 27 09:38:20 UTC 2022
Background: I've spent several years converting xls[x] to csv using
'in2csv', which is a Python app. This has always been problematical, but
does give correct output if you're careful with the input. However, the
current version (1.0.6) has broken some functionality, so it's probably
no longer usable. This seems to be a generic problem with Python
solutions which use 'xlrd'.
The requirement is actually pretty trivial: the input spreadsheets
contain only ASCII text and times, which are formatted as either
[m]:ss.0, or [m]:ss.00. The csv output should therefore look like
"5:10.52" for 310.52 seconds, and so on. The old in2csv frequently
produced floating-point output instead, but this is Ok, since it's
easily convertible to seconds.
I've been looking for C/C++ alternatives, but the libraries I've found
don't appear to be well-supported or tested, and may well have other
problems.
However, this *does* work when using LibreOffice (6.4.7.2/RHEL8) for
one-off conversions. I can read an xls or xlsx, save-as csv, and get the
correct result.
Question: how realistic is it to hack Calc to extract a stand-alone
Excel-to-csv converter? I can do the development as long as I can get
usable results in a few days, and I don't have to write anything that's
not C++. However, this is a non-starter if there are any Java
dependencies (the code has to run on a webapp which is a minimal Ubuntu
server install); I need something which can either link into a C++ app,
or be run directly with minimal dependencies.
I'd appreciate some feedback on how realistic this is before downloading
any sources and looking at them. Thanks.
More information about the LibreOffice
mailing list