实际上,我曾经让这个工作过,但后来我丢失了代码,无法让它再次工作。
我可以使用 $.get(server filepath) 很容易地获取文件,它给了我一堆看起来很疯狂的数据......我尝试了各种方法来读取二进制数据作为 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" 我得到 "undefined TypeError: Cannot read property '0' of undefined"
我尝试使用以下方法对其进行操作:
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;
我试过使用解码器(“utf-8”),然后使用decoder.decode(csvData)......
没有得到任何工作。