# Overview

oosxl is a cross-platform C++ library for reading and writing Excel files, requiring no dependencies on the Excel application or any other third-party components. The library provides both C and C++ interfaces, enabling developers to easily integrate Excel file processing functionality using various languages and across various platforms.

Note

Both row and column are 1-based index, while other indexes are 0-based

## Key Advantages of oosxl

✅ Cross-Platform Support (Windows/Linux/macOS)

- Usable on Windows, Linux, and macOS

- Usable on both 32-bit and 64-bit architectures

✅ High Speed, High Performance,

- Low Memory Usage, suitable for big data processing

- Capable of writing 8,000,000 numeric cells per second (on a 3.7 GHz CPU)

- Reading a 1,000,000-row, 23-column Excel file only occupies 121M of memory (actual memory usage may vary depending on the file content).

- Utilizes optimized algorithms for handling large Excel files

✅ No Excel Installation Required, Reduced Dependencies

- No dependency on Microsoft Office or Excel

- No need to install any runtime components

- Pure code implementation, simple deployment

✅ Multiple Programming Language Interfaces

- Native C/C++ interfaces

- Easy integration into various development environments

## oosxl Structure Diagram

## Functional Overview

oosxl aims for high performance, ease of use, and low memory footprint, including but not limited to the following features:

### Supported File Formats

- Supports Excel’s .xlsx format

### Read/Write Operations

- Create one or multiple documents

- Write to one or multiple documents

### Data Operations

- Supports various data types: numbers, text(rich text), dates, Boolean values, error values, etc.

- Custom number formats

- Cell formatting(font, borders, color, alignment, etc.)

- Defined Names

- Merge cells

- Manage tables within worksheets

- Set formulas and read formula results

- Worksheet protection and security features

- more…

Styled using the Piccolo Theme