Create XLS (XLSX) with JavaScript / Angular / Capacitor / Node / Ionic and save to mobile filesystem

Опубликовано: 04 Август 2026
на канале: Gean Marques
1,513
27

Learn how to create XLS, XLSX from an array and save it to mobile filesystem using JavaScript, Angular, Ionic, Node and Capacitor

Create Excel file instead of CSV using Javascript. The input is a simple JS array and the output is a Excel file like XLS, XLSX, etc.

NPM packages:
capacitor-blob-writer
xlsx
capacitor/filesystem

import { Directory } from '@capacitor/filesystem';
import write_blob from 'capacitor-blob-writer';
import * as XLSX from 'xlsx';

const EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';

const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(lines);

// eslint-disable-next-line
const workbook: XLSX.WorkBook = { Sheets: { data: worksheet }, SheetNames: ['data'] };
const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });

const excelData: Blob = new Blob([excelBuffer], {
type: EXCEL_TYPE
});

write_blob({
path: 'Simulation.xlsx',
directory: Directory.Documents,
blob: excelData
}).then(function(x){
window.alert('Data saved to Documents');
}).catch(function(e){
window.alert(e);
});

AndroidManifest.xml:
application android:requestLegacyExternalStorage="true"