There an impressively wide choice of Free and open source libraries and tools supporting the .xls format.
A sample:
A quick critical review:
- GUI tools implementations are difficult to re-use. They focus on import of all formulas, GUI presentation and so on, which is really a different use.
- Java libraries seem to be really interesting, but Java is difficult to call from a C or C++ program.
- Several C/C++ libraries exist, but none of them seems to be sufficent and stable as required. Someones are still marked to be “beta-stage” despite being released some four or five years ago - project activity seems to be very low, and download statistics are discouraging.
Conclusion: a suitable C/C++ library supporting data extraction from .xls files doesn't seem to exists: or at least, there is no obvious reference choice.
So we'll go on the hardest way, we'll develop yet another .xls reading library: FreeXL.