본문 바로가기

3.구현/HTML5&Javascript

Javascript XLSX 파일 읽기

sheetjs 라이브러리[1]를 사용한 예제이다.

작성자: ospace114@empal.com, http://ospace.tistory.com/

기본 라이브러리 포함

모든 라이브러리를 포함할 필요는 없고 xlsx.full.min.js만 포함해도 된다. 사용하는 기능에 따라서 포함하면 된다.

<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/xlsx.js">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/jszip.js">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.10.8/xlsx.full.min.js">
</script>

XML 처리

function parseXlsx(data) {
    var workbook = XLSX.read(data,{ type:'buffer' });
    var ret = {};
    workbook.SheetNames.forEach( function(sheetName) {
        let row = XLSX.utils.sheet_to_row_object_array(workbook.Sheets[sheetName]);
        ret[sheetName] = row;
    });
    return ret;
}
readFileArray('...').then( function(res) {
    var data = parseXlsx(res);
    //...
});

readUrl('...').then( function(res) {
    var data = parseXlsx(res);
    //...
});

결론

간단한 엑셀 파일 읽어오는 예제이다. 파일이나 URL로 읽어올 때에는 ArrayBuffer 형태로 읽어와야 한다.

참고

[1] https://github.com/SheetJS/sheetjs
[2] https://github.com/catamphetamine/read-excel-file
[3] https://ospace.tistory.com/740

반응형