2017-03-20 09:02:25 +00:00
|
|
|
## Writing Options
|
|
|
|
|
|
|
|
The exported `write` and `writeFile` functions accept an options argument:
|
|
|
|
|
|
|
|
| Option Name | Default | Description |
|
|
|
|
| :---------- | -------: | :-------------------------------------------------- |
|
|
|
|
| type | | Output data encoding (see Output Type below) |
|
|
|
|
| cellDates | `false` | Store dates as type `d` (default is `n`) |
|
|
|
|
| bookSST | `false` | Generate Shared String Table ** |
|
|
|
|
| bookType | `"xlsx"` | Type of Workbook (see below for supported formats) |
|
|
|
|
| sheet | `""` | Name of Worksheet for single-sheet formats ** |
|
|
|
|
| compression | `false` | Use ZIP compression for ZIP-based formats ** |
|
2017-04-10 05:10:54 +00:00
|
|
|
| Props | | Override workbook properties when writing ** |
|
2017-04-17 02:08:23 +00:00
|
|
|
| themeXLSX | | Override theme XML when writing XLSX/XLSB/XLSM ** |
|
2017-03-20 09:02:25 +00:00
|
|
|
|
|
|
|
- `bookSST` is slower and more memory intensive, but has better compatibility
|
|
|
|
with older versions of iOS Numbers
|
2017-03-27 21:35:15 +00:00
|
|
|
- The raw data is the only thing guaranteed to be saved. Features not described
|
|
|
|
in this README may not be serialized.
|
2017-03-20 09:02:25 +00:00
|
|
|
- `cellDates` only applies to XLSX output and is not guaranteed to work with
|
|
|
|
third-party readers. Excel itself does not usually write cells with type `d`
|
|
|
|
so non-Excel tools may ignore the data or blow up in the presence of dates.
|
2017-04-10 05:10:54 +00:00
|
|
|
- `Props` is an object mirroring the workbook `Props` field. See the table from
|
|
|
|
the [Workbook File Properties](#workbook-file-properties) section.
|
2017-04-17 02:08:23 +00:00
|
|
|
- if specified, the string from `themeXLSX` will be saved as the primary theme
|
|
|
|
for XLSX/XLSB/XLSM files (to `xl/theme/theme1.xml` in the ZIP)
|
2017-03-20 09:02:25 +00:00
|
|
|
|
|
|
|
### Supported Output Formats
|
|
|
|
|
|
|
|
For broad compatibility with third-party tools, this library supports many
|
|
|
|
output formats. The specific file type is controlled with `bookType` option:
|
|
|
|
|
|
|
|
| bookType | file ext | container | sheets | Description |
|
|
|
|
| :------- | -------: | :-------: | :----- |:--------------------------------- |
|
|
|
|
| `xlsx` | `.xlsx` | ZIP | multi | Excel 2007+ XML Format |
|
|
|
|
| `xlsm` | `.xlsm` | ZIP | multi | Excel 2007+ Macro XML Format |
|
|
|
|
| `xlsb` | `.xlsb` | ZIP | multi | Excel 2007+ Binary Format |
|
|
|
|
| `biff2` | `.xls` | none | single | Excel 2.0 Worksheet format |
|
2017-04-03 00:16:03 +00:00
|
|
|
| `xlml` | `.xls` | none | multi | Excel 2003-2004 (SpreadsheetML) |
|
|
|
|
| `ods` | `.ods` | ZIP | multi | OpenDocument Spreadsheet |
|
2017-03-20 09:02:25 +00:00
|
|
|
| `fods` | `.fods` | none | multi | Flat OpenDocument Spreadsheet |
|
|
|
|
| `csv` | `.csv` | none | single | Comma Separated Values |
|
2017-04-03 00:16:03 +00:00
|
|
|
| `txt` | `.txt` | none | single | UTF-16 Unicode Text (TXT) |
|
2017-04-01 07:32:12 +00:00
|
|
|
| `sylk` | `.sylk` | none | single | Symbolic Link (SYLK) |
|
2017-04-16 04:32:13 +00:00
|
|
|
| `html` | `.html` | none | single | HTML Document |
|
2017-04-01 07:32:12 +00:00
|
|
|
| `dif` | `.dif` | none | single | Data Interchange Format (DIF) |
|
2017-04-03 00:16:03 +00:00
|
|
|
| `prn` | `.prn` | none | single | Lotus Formatted Text |
|
2017-03-20 09:02:25 +00:00
|
|
|
|
|
|
|
- `compression` only applies to formats with ZIP containers.
|
|
|
|
- Formats that only support a single sheet require a `sheet` option specifying
|
|
|
|
the worksheet. If the string is empty, the first worksheet is used.
|
2017-04-03 00:16:03 +00:00
|
|
|
- `writeFile` will automatically guess the output file format based on the file
|
|
|
|
extension if `bookType` is not specified. It will choose the first format in
|
|
|
|
the aforementioned table that matches the extension.
|
2017-03-20 09:02:25 +00:00
|
|
|
|
|
|
|
### Output Type
|
|
|
|
|
|
|
|
The `type` argument for `write` mirrors the `type` argument for `read`:
|
|
|
|
|
|
|
|
| `type` | output |
|
|
|
|
|------------|-----------------------------------------------------------------|
|
|
|
|
| `"base64"` | string: base64 encoding of the file |
|
|
|
|
| `"binary"` | string: binary string (`n`-th byte is `data.charCodeAt(n)`) |
|
|
|
|
| `"buffer"` | nodejs Buffer |
|
|
|
|
| `"file"` | string: name of file to be written (nodejs only) |
|
|
|
|
|
|
|
|
|