| 
									
										
										
										
											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` | 
					
						
							| 
									
										
										
										
											2017-08-01 05:50:53 +00:00
										 |  |  |   so non-Excel tools may ignore the data or error 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)                | | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 |