下午測了一下
總之就是 embed 的檔案
會被放到 xl/embeddings/
底下
並轉成 xxx.bin
所以要還原原本的檔案
就要去讀他的 header
把加工過的拿掉
不過後來發現不同檔案格式的 header 不太一樣
想想也是蠻合理的 XD
沒注意我都是用 .exe
來測
所以目前測試是 .exe
能正常提取
貼個部份的 code
其他有空再研究
(async () => {
try {
const excelFilesLocation = process.argv[2] || '.';
console.log(`[Event]: Getting all excel files.`);
const allExcelFiles = getAllExcelFiles(excelFilesLocation);
if (!allExcelFiles.length) {
throw new Error('No .xlsx file found.');
}
console.log(`[Event]: Getting all excel files succeed.`);
console.log(`[Event]: Getting all object files.`);
await unzipAllBinFiles(excelFilesLocation, allExcelFiles);
console.log(`[Event]: Getting all object files succeed.`);
console.log(`[Event]: Start output files.`);
await extractOriginalFiles();
console.log(`[Event]: Output files succeed.`);
} catch (error) {
console.log(`[Error]: ${error.message}`);
} finally {
console.log(`[Event]: Removing temp files.`);
await removeTempFiles();
console.log(`[Event]: Remove temp files succeed.`);
}
})()