As always in programming, there is more than one method to
achieve the same thing.
ODF files are just a collection of xml files, packed in zip
files so, any of the vast number of tools for handling zip files and XML data
can be used to handle OpenDocument.
As another option, you could use some third party component
which has support for ODF format. This will probably cost you some money but
has advantage that usually more than one format (for example:
GemBox.Spreadsheet reads/writes
XLS, XLSX, CSV, HTML and ODS) are supported within the same API, so your
application will be able to target different file formats using the same code.