forked from sheetjs/docs.sheetjs.com
		
	
		
			
	
	
		
			89 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			89 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								## 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 **        |
							 | 
						||
| 
								 | 
							
								|`Props`      |          | Override workbook properties when writing **        |
							 | 
						||
| 
								 | 
							
								|`themeXLSX`  |          | Override theme XML when writing XLSX/XLSB/XLSM **   |
							 | 
						||
| 
								 | 
							
								|`ignoreEC`   |   `true` | Suppress "number as text" errors **                 |
							 | 
						||
| 
								 | 
							
								|`numbers`    |          | Payload for NUMBERS export **                       |
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								- `bookSST` is slower and more memory intensive, but has better compatibility
							 | 
						||
| 
								 | 
							
								  with older versions of iOS Numbers
							 | 
						||
| 
								 | 
							
								- The raw data is the only thing guaranteed to be saved.  Features not described
							 | 
						||
| 
								 | 
							
								  in this README may not be serialized.
							 | 
						||
| 
								 | 
							
								- `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 error in the presence of dates.
							 | 
						||
| 
								 | 
							
								- `Props` is an object mirroring the workbook `Props` field.  See the table from
							 | 
						||
| 
								 | 
							
								  the [Workbook File Properties](#workbook-file-properties) section.
							 | 
						||
| 
								 | 
							
								- 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)
							 | 
						||
| 
								 | 
							
								- Due to a bug in the program, some features like "Text to Columns" will crash
							 | 
						||
| 
								 | 
							
								  Excel on worksheets where error conditions are ignored.  The writer will mark
							 | 
						||
| 
								 | 
							
								  files to ignore the error by default.  Set `ignoreEC` to `false` to suppress.
							 | 
						||
| 
								 | 
							
								- Due to the size of the data, the NUMBERS data is not included by default. The
							 | 
						||
| 
								 | 
							
								  included `xlsx.zahl.js` and `xlsx.zahl.mjs` scripts include the data.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### 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       |
							 | 
						||
| 
								 | 
							
								| `biff8`    | `.xls`   |    CFB    | multi  | Excel 97-2004 Workbook Format   |
							 | 
						||
| 
								 | 
							
								| `biff5`    | `.xls`   |    CFB    | multi  | Excel 5.0/95 Workbook Format    |
							 | 
						||
| 
								 | 
							
								| `biff4`    | `.xls`   |   none    | single | Excel 4.0 Worksheet Format      |
							 | 
						||
| 
								 | 
							
								| `biff3`    | `.xls`   |   none    | single | Excel 3.0 Worksheet Format      |
							 | 
						||
| 
								 | 
							
								| `biff2`    | `.xls`   |   none    | single | Excel 2.0 Worksheet Format      |
							 | 
						||
| 
								 | 
							
								| `xlml`     | `.xls`   |   none    | multi  | Excel 2003-2004 (SpreadsheetML) |
							 | 
						||
| 
								 | 
							
								| `numbers`  |`.numbers`|    ZIP    | single | Numbers 3.0+ Spreadsheet        |
							 | 
						||
| 
								 | 
							
								| `ods`      | `.ods`   |    ZIP    | multi  | OpenDocument Spreadsheet        |
							 | 
						||
| 
								 | 
							
								| `fods`     | `.fods`  |   none    | multi  | Flat OpenDocument Spreadsheet   |
							 | 
						||
| 
								 | 
							
								| `wk3`      | `.wk3`   |   none    | multi  | Lotus Workbook (WK3)            |
							 | 
						||
| 
								 | 
							
								| `csv`      | `.csv`   |   none    | single | Comma Separated Values          |
							 | 
						||
| 
								 | 
							
								| `txt`      | `.txt`   |   none    | single | UTF-16 Unicode Text (TXT)       |
							 | 
						||
| 
								 | 
							
								| `sylk`     | `.sylk`  |   none    | single | Symbolic Link (SYLK)            |
							 | 
						||
| 
								 | 
							
								| `html`     | `.html`  |   none    | single | HTML Document                   |
							 | 
						||
| 
								 | 
							
								| `dif`      | `.dif`   |   none    | single | Data Interchange Format (DIF)   |
							 | 
						||
| 
								 | 
							
								| `dbf`      | `.dbf`   |   none    | single | dBASE II + VFP Extensions (DBF) |
							 | 
						||
| 
								 | 
							
								| `wk1`      | `.wk1`   |   none    | single | Lotus Worksheet (WK1)           |
							 | 
						||
| 
								 | 
							
								| `rtf`      | `.rtf`   |   none    | single | Rich Text Format (RTF)          |
							 | 
						||
| 
								 | 
							
								| `prn`      | `.prn`   |   none    | single | Lotus Formatted Text            |
							 | 
						||
| 
								 | 
							
								| `eth`      | `.eth`   |   none    | single | Ethercalc Record Format (ETH)   |
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								- `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.
							 | 
						||
| 
								 | 
							
								- `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.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### 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 (byte `n` is `data.charCodeAt(n)`)        |
							 | 
						||
| 
								 | 
							
								| `"string"` | string: JS string (characters interpreted as UTF8)              |
							 | 
						||
| 
								 | 
							
								| `"buffer"` | nodejs Buffer                                                   |
							 | 
						||
| 
								 | 
							
								| `"array"`  | ArrayBuffer, fallback array of 8-bit unsigned int               |
							 | 
						||
| 
								 | 
							
								| `"file"`   | string: path of file that will be created (nodejs only)         |
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								- For compatibility with Excel, `csv` output will always include the UTF-8 byte
							 | 
						||
| 
								 | 
							
								  order mark.
							 | 
						||
| 
								 | 
							
								
							 |