문제
아래 사진처럼 Mac에서 올린 파일을 Window에서 다운 받을 때, 파일명의 자음 모음이 분리되는 현상이 있었다.
원인
Window와 Mac이 서로 다른 유니코드 정규화 방식을 사용하기 때문이었다.
Mac OS X 는 NFD, Window는 NFC 를 쓴다.
NFD와 NFC의 차이점은 아래 블로그글 참조.
https://www.hungrydiver.co.kr/bbs/detail/develop?id=68&scroll=comment
해결방안
Java에서 제공하는 java.text.Normalizer을 이용해 해결할 수 있다.
아래 코드로 파일 이름을 NFC로 normalize 해주면 된다.
public static String getNormalizedFileName(String fileName) {
return Normalizer.normalize(fileName, Normalizer.Form.NFC);
}
'트러블슈팅' 카테고리의 다른 글
JAVA SSL 인증서 문제 - PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException (0) | 2022.08.09 |
---|---|
BooleanExpression의 NullPointException에러 (0) | 2022.05.04 |
Pod들이 143 Error로 계속 리부팅되는 문제 (0) | 2022.04.27 |
필드명으로 인해 Spring Request DTO 에 null 값이 들어가는 이유 (0) | 2022.04.15 |
AWS EC2 인스턴스 제거 후 비용 청구 문제 (원인: 탄력적 IP) (0) | 2022.04.03 |