2015-09-22 4 views
0

Я генерирую документы .xlsx в своем решении и отправляю их пользователю при анализе js-xlsx, у них есть нулевые ячейки, это можно устранить, открыв сгенерированный .xlsx с помощью Excel и спасти их.Разбор C# сгенерированный OpenXML xlsx с js-xlsx

Я хотел был бы обработать мои сгенерированные документы .xlsx непосредственно с помощью js-xlsx.

Код для сохранения в .xlsx:

 var ms = new MemoryStream(); 
     workbook.SaveAs(ms); 
     ms.Seek(0, SeekOrigin.Begin); 
     return ms;var ms = new MemoryStream(); 

Код для открытия .xlsx с JS-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); 
} 

ответ

0

Я обнаружил, что с # OpenXML добавляет 'х:' перед тем string xml tags, это можно зафиксировать в js-xlsx, заменив теги «x:».

просто поставить:

data = data.replace(new RegExp('x:', 'g'), ''); 

в функции parse_ws_xml (данные, выбирает, Rels) и функция parse_sst_xml (данные, ОПТС)

Todo: сделать исправление, которое позволяет иметь строки, содержащие ' x: 'в вашем файле .xlsx.

Смежные вопросы