4
let file = [ { fieldname: 'retailers',
        originalname: 'PB,HR,CH.xlsx',
        encoding: '7bit',
        mimetype:
         'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
        buffer:
         <Buffer 50 4b 03 04 14 00 08 08 08 00 18 ef bf bd ef bf bd 50 00 00 00 00 00 00 00 00 00 00 00 00 18 00 00 00 78 6c 2f 64 72 61 77 69 6e 67 73 2f 64 72 61 77 ... >,
        size: 110449,
        filepath: '/tmp/PB,HR,CH.xlsx' } ]
    



let tempFile = Path.join(os.tmpdir(),file[0].originalname)
                        var wb =  xlsx.readFile(tempFile)
                        let sheetname = wb.SheetNames

                        var ws = wb.Sheets[sheetname[0]]
                        var csvToJSON = await xlsx.utils.sheet_to_json(ws,{raw:true,defval:""})

i am trying to upload excel file with xlsx module (sheetjs) but when i upoad any excel file the xlsx.readFile(tempFile) give me the following errors

Error: End of data reached (data length = 110449, asked index = 171816). Corrupted zip ?
at NodeBufferReader.checkIndex (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:272:19)
at NodeBufferReader.checkOffset (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:263:14)
at NodeBufferReader.readData (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:634:10)
at NodeBufferReader.readString (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:321:49)
at ZipEntries.readBlockEndOfCentral (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:2198:39)
at ZipEntries.readEndOfCentral (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:2286:14)
at ZipEntries.load (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:2344:14)
at new ZipEntries (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:2168:14)
at JSZipSync.module.exports [as load] (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:581:18)
at new JSZipSync (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/jszip.js:528:14)
at zip_read (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/xlsx.js:2973:24)
at read_zip (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/xlsx.js:20924:8)
at readSync (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/xlsx.js:20991:69)
at Object.readFileSync (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/xlsx/xlsx.js:21005:9)
at createRetailers (/home/batman/Desktop/todoStack/Code Brew Labs/controllers/retailers.controllers.js:21:40)
at Layer.handle [as handle_request] (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/express/lib/router/layer.js:95:5)
at next (/home/batman/Desktop/todoStack/Code Brew Labs/node_modules/express/lib/router/route.js:137:13)
at Promise.all.then (/home/batman/Desktop/todoStack/Code Brew Labs/utils/fileUpload.js:94:17)

POST /retailers/fileupload - - ms - -

here is my excel https://easyupload.io/zgrcxo

0 Answers0