2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
									
										
										
										
											2022-08-24 23:48:22 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								pagination_prev: getting-started/index
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								pagination_next: getting-started/example
							 
						 
					
						
							
								
									
										
										
										
											2022-08-31 06:46:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								sidebar_position: 3
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								sidebar_custom_props:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  summary: Server-side and other frameworks using NodeJS modules
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import current from '/version.js';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# NodeJS
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import Tabs from '@theme/Tabs';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import TabItem from '@theme/TabItem';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Tarballs are available on < https: / / cdn . sheetjs . com > .
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-05 22:43:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< div > Each individual version can be referenced using a similar URL pattern.< br / >  
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< a  href = {`https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`} > https://cdn.sheetjs.com/xlsx-{current}/xlsx-{current}.tgz< / a >  is the URL for {current}< / div >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## Installation
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Tarballs can be directly installed using a package manager:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "npm"  label = "npm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "pnpm"  label = "pnpm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								pnpm install https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "yarn"  label = "Yarn"  default > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								yarn add https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-07-25 23:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								:::warning
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Older releases are technically available on the public npm registry as `xlsx` ,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								but the registry is out of date.  The latest version on that registry is 0.18.5
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								This is a known registry bug
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< https: / / cdn . sheetjs . com / >  is the authoritative source for SheetJS scripts. 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								For existing projects, the easiest approach is to uninstall and reinstall:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "npm"  label = "npm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								npm rm --save xlsx
							 
						 
					
						
							
								
									
										
										
										
											2023-03-12 06:25:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-07-25 23:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "pnpm"  label = "pnpm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								pnpm rm xlsx
							 
						 
					
						
							
								
									
										
										
										
											2023-03-12 06:25:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								pnpm install https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-07-25 23:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "yarn"  label = "Yarn"  default > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								yarn remove xlsx
							 
						 
					
						
							
								
									
										
										
										
											2023-03-12 06:25:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								yarn add https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-07-25 23:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								:::
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								### Vendoring
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								For general stability, "vendoring" modules is the recommended approach:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< div > 1) Download the tarball (< code  parentName = "pre" > xlsx-{current}.tgz< / code > ) for the desired version. The current 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								   version is available at < a  href = {`https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`} > https://cdn.sheetjs.com/xlsx-{current}/xlsx-{current}.tgz< / a > < / div > < br / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-23 03:20:02 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								2) Create a `vendor`  subfolder at the root of your project and move the tarball
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								   to that folder.  Add it to your project repository.
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								3) Install the tarball using a package manager:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "npm"  label = "npm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								npm i --save file:vendor/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "pnpm"  label = "pnpm" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								pnpm install file:vendor/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < TabItem  value = "yarn"  label = "Yarn"  default > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< pre > < code  parentName = "pre"  { . . . { " className " :  " language-bash " } } > {`\ 
						 
					
						
							
								
									
										
										
										
											2022-08-07 07:48:40 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								yarn add  file:vendor/xlsx-${current}.tgz`}
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< / code > < / pre >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  < / TabItem > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / Tabs >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								The package will be installed and accessible as `xlsx` .
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## Usage
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-05 22:43:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#### CommonJS `require`
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								By default, the module supports `require`  and it will automatically add support
							 
						 
					
						
							
								
									
										
										
										
											2022-08-25 08:22:28 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								for streams and file system access:
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								var XLSX = require("xlsx");
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-05 22:43:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#### ESM `import`
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								The module also ships with `xlsx.mjs`  for use with `import` .  The `mjs`  version
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								does not automatically load native node modules, so they must be added manually:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
									
										
										
										
											2023-01-09 05:08:30 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import * as XLSX from 'xlsx';
							 
						 
					
						
							
								
									
										
										
										
											2022-05-16 03:26:04 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* load 'fs' for readFile and writeFile support */
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import * as fs from 'fs';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								XLSX.set_fs(fs);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* load 'stream' for stream support */
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import { Readable } from 'stream';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								XLSX.stream.set_readable(Readable);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* load the codepage support library for extended support with older formats  */
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import * as cpexcel from 'xlsx/dist/cpexcel.full.mjs';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								XLSX.set_cptable(cpexcel);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```