Я пытаюсь отобразить во внешнем интерфейсе несколько строк данных из файла xlsx.Я хочу прочитать первые n строк из файла Excel, потому что, если я прочитал полный файл Excel, это займет много времени, а это не требуется.Для этого я делаю слайс с 5kb.Он работает, если размер файла ниже 5 КБ (потому что я читаю полный Excel), но он не работает выше 5 КБ.Я могу видеть в консоли эту ошибку.
Ошибка: поврежденный почтовый индекс: не удается найти конец центрального каталога
Вы можете проверить мой код ниже.Я передаю файл в функцию readFile.Я дал код sudo моей программы ниже.
import * as XLSX from 'xlsx';
function readFile(file)
{
var myReader: FileReader = new FileReader();
let slice_file = file.slice(0, 1024*5);
//console.log(slice_file);
let workbook: any;
myReader.readAsArrayBuffer(slice_file)
myReader.onload = (e) => {
try{
workbook = XLSX.read(myReader.result, { type: "array" });
}catch(e){
console.log(e);
}
}
//I will use workbook here
}
Насколько я знаю, это не сработает, потому что без чтения полного размера файла он будет похож на поврежденный файл.Я не хочу читать весь файл.Я попытался с помощью программы чтения файлов в двоичном формате, а также преобразовал результат myReader в двоичный файл и попытался читать с помощью XLXS, но безрезультатно.