http로 받아온 Json 데이터를 파싱하는 과정에서 한글 깨짐을 경험.
해결 : utf8 형식으로 디코딩을 해야함
다음 코드에서
if (response.statusCode == 200) {
return response.body;
다음 코드로 변경
if (response.statusCode == 200) {
return utf8.decode(response.bodyBytes);
기본 EUC-KR(Extended Unix Code-Korea) 와 UTF-8 형식의 차이는
EUC-KR 과 UTF 의 차이점에 대하여 에서 확인할 수 있다.
EUC-KR 은 2byte로 완성형 조합 방식으로 한글을 표현한 인코딩 방식
완성형 조합이란 완성된 글자 하나하나에 코드번호를 부여한다.
UTF-8 은 유니코드 인코딩 방식 중 하나로
유니코드 범위에 따라 1~4byte로 인코딩을 하는 '가변적'인 방식
사용빈도가 높은 글자에 낮은 byte를 할당해 적은 공간을 차지하게 한다.
다만 UTF-8 사용시 용량이 다소 늘어나는 부분이 있다.
UTF-KR에서는 한글이 2byte이지만
UTF-8 에서는 한글이 3byte이기 때문에...
끝.