본문 바로가기

트러블슈팅

Mac에서 올린 파일이 Window에서 다운 받을 때, 파일명의 자음 모음이 분리되는 현상

문제

아래 사진처럼 Mac에서 올린 파일을 Window에서 다운 받을 때, 파일명의 자음 모음이 분리되는 현상이 있었다.

원인

Window와 Mac이 서로 다른 유니코드 정규화 방식을 사용하기 때문이었다.

Mac OS X 는 NFD, Window는 NFC 를 쓴다.

 

NFD와 NFC의 차이점은 아래 블로그글 참조.

https://www.hungrydiver.co.kr/bbs/detail/develop?id=68&scroll=comment 

 

유니코드 정규화(Unicode Normalization Form) 문제

 

www.hungrydiver.co.kr

 

해결방안

Java에서 제공하는 java.text.Normalizer을 이용해 해결할 수 있다.

아래 코드로 파일 이름을 NFC로 normalize 해주면 된다.

    public static String getNormalizedFileName(String fileName) {
        return Normalizer.normalize(fileName, Normalizer.Form.NFC);
    }