Javascript 用js xlsx解析C#生成的OpenXML xlsx

Javascript 用js xlsx解析C#生成的OpenXML xlsx,javascript,c#,excel,xlsx,Javascript,C#,Excel,Xlsx,我在我的解决方案中生成.xlsx文档并将其发送给用户,当使用js xlsx解析时,它们没有单元格,这可以通过使用Excel打开生成的.xlsx并保存来解决 我希望能够直接用js xlsx解析生成的.xlsx文档 保存到.xlsx的代码: var ms = new MemoryStream(); workbook.SaveAs(ms); ms.Seek(0, SeekOrigin.Begin); return ms;var ms =

我在我的解决方案中生成.xlsx文档并将其发送给用户,当使用js xlsx解析时,它们没有单元格,这可以通过使用Excel打开生成的.xlsx并保存来解决

我希望能够直接用js xlsx解析生成的.xlsx文档

保存到.xlsx的代码:

        var ms = new MemoryStream();
        workbook.SaveAs(ms);
        ms.Seek(0, SeekOrigin.Begin);
        return ms;var ms = new MemoryStream();
使用js xlsx打开.xlsx的代码:

function readBook(file) {
    var reader = new FileReader();
    reader.onload = function (e) {
        var data = e.target.result;
        var workbook = XLSX.read(data, { type: 'binary' });
        console.log(workbook);
    };
    reader.readAsBinaryString(file);
 }
我发现c#OpenXML在所有字符串xml标记前面添加了“x:”,这可以通过替换“x:”标记在js xlsx中修复

简言之:

data = data.replace(new RegExp('x:', 'g'), '');
转换为函数parse_ws_xml(数据、opts、rels) 和函数parse_sst_xml(数据、选项)

Todo:修复.xlsx文件中包含“x:”的字符串