Mac OS에서 한글 파일명이 깨지는 이슈

요약 Mac OS 에서 한글이 있는 파일명은 자소가 분해되어 나온다. NFC 모드 : '한글파일.txt'

NFD 모드 : 'ㅎㅏㄴㄱㅡㄹㅍㅏㅇㅣㄹ.txt'

NodeJS에서 String Class에는 normalize('NFC' | 'NFD' | 'NFKC' | 'NFKD' | undefined) 메쏘드를 지원한다. (default = 'NFC') normalize를 써서 자소를 모아주면 통일성 있게 정보를 처리할 수 있다.

꼭 필요한 사례

  1. 파일 이름을 파싱하여 정보를 추출할 때 (정규식 처리시 오류)
  2. Google Cloud Platform Storage Bucket에서 파일 다운로드 링크를 요청할 때.