JSZip에서 파일명이 한글인 파일을 압축한 파일 읽기

JSZip은 웹에서 zip 압축 파일을 생성하거나 풀 때 사용하는 라이브러리인데, 기본적으로 압축 파일 안의 파일 명이 한글일 때 파일 명이 깨진다. 그런데 이 문제를 해결할 수 있다. iconv 라이브러리를 사용하면 되고 JSZip은 내부적으로 iconv 라이브러리와 연계하여 압축 파일 안의 파일 명이 한글일때 문제점을 해결해 주는 API를 지원한다. 코드는 다음과 같다.

const zip = new JSZip();
zip.loadAsync(aBuf, {
    decodeFileName: function (bytes) {
        return iconv.decode(bytes, "euc-kr");
    }
}).then((zip) => {
    for(let file of Object.values(zip.files)) {
        console.log(file.name);
    }
});

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다