在Javascript中从Excel xlsb文件解析二进制文件到JSON

时间:2018-06-18 20:29:05

标签: json parsing xlsb

我实际上已经使用了一次,但后来我丢失了代码来完成它并且还没有能够再次使用它。

我能够使用$ .get(服务器文件路径)轻松获取文件,它给了我一堆疯狂的数据......我已经尝试了各种方法来读取二进制数据作为blob和arrayBuffer但这些都没有成功。

如何将其转换为实际数据,然后转换为类似于D3.parseCSV的JSON?

我尝试过以下方法:

$.ajax({
        url: url,
        method: 'GET',
        dataType: 'binary',
        processData: false,
        responseType: 'arrayBuffer',
 }).then(function (data) {
       return data
       }, function (error) {
         alertify.error('There was an error retriving the data');
     });
};

它给了我与仅使用$ .get(url)

相同的数据

我尝试过使用Sheets.JS并做了

$.get(filePath).then(function(data) {
XLSX.read(data, {Props: {type: "buffer"}}) 
})

并获得"无法识别的类型[object Object]"错误。

如果我使用type:" binary"我得到"未定义TypeError:无法读取属性' 0'未定义"

我试过用以下方法操纵它:

                var buf = new ArrayBuffer(csvData.length * 2);
                var bufView = new Uint16Array(buf);
                for (var j = 0; j < csvData.length; j++) {
                    bufView[j] = csvData.charCodeAt(j);
                }
                var myData = buf;

我尝试使用解码器(&#34; utf-8&#34;)然后使用decoder.decode(csvData)...

没有任何工作可做。

0 个答案:

没有答案