## Writing Workbooks For writing, the first step is to generate output data. The helper functions `write` and `writeFile` will produce the data in various formats suitable for dissemination. The second step is to actual share the data with the end point. Assuming `workbook` is a workbook object: - nodejs write to file: ```js /* output format determined by filename */ XLSX.writeFile(workbook, 'out.xlsx'); /* at this point, out.xlsx is a file that you can distribute */ ``` - browser generate binary blob and "download" to client (using [FileSaver.js](https://github.com/eligrey/FileSaver.js/) for download): ```js /* bookType can be 'xlsx' or 'xlsm' or 'xlsb' or 'ods' */ var wopts = { bookType:'xlsx', bookSST:false, type:'binary' }; var wbout = XLSX.write(workbook,wopts); function s2ab(s) { var buf = new ArrayBuffer(s.length); var view = new Uint8Array(buf); for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; return buf; } /* the saveAs call downloads a file on the local machine */ saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), "test.xlsx"); ``` **Complete examples:** - generates a simple file - writing an array of arrays in nodejs - exporting an HTML table