‘모지바케’라는 말
영어권에서는 글자 깨짐을 mojibake(모지바케)라고 부릅니다. 일본어 ‘문자(文字)’와 ‘바뀜(化け)’을 합친 말로, 여러 인코딩이 함께 쓰이던 1990년대 일본에서 깨진 메일과 웹 페이지가 흔했던 데서 유래했습니다. 한국에서는 흔히 ‘글자 깨짐’, ‘한글 깨짐’이라고 합니다.
글자가 깨지는 원리
컴퓨터는 글자를 바이트(숫자)로 저장하고, 어떤 바이트가 어떤 글자인지는 인코딩이 정합니다. 한글은 예전에는 EUC-KR(CP949)로, 지금은 주로 UTF-8로 저장됩니다. 예를 들어 EUC-KR에서 ‘한글’은 4바이트 C7 D1 B1 DB인데, 이 바이트를 서유럽용 인코딩(Windows-1252)으로 읽으면 바이트마다 다른 문자가 되어 ÇѱÛ로 보입니다.
이때 바이트 자체는 사라지지 않았습니다. 잘못 읽었을 뿐이므로 올바른 인코딩으로 다시 읽으면 원래 문장으로 돌아옵니다. Mojibuster는 깨진 글자를 바이트로 되돌린 뒤 올바르게 다시 읽습니다.
깨진 글자
¾È³çÇϼ¼¿ä ±ÛÀÚ ±úÁü º¹±¸ ¾È³»ÀÔ´Ï´Ù
복구 후
안녕하세요 글자 깨짐 복구 안내입니다
대표적인 깨짐 유형
- 서유럽 문자로 바뀐 경우:
ÇѱÛ처럼 악센트가 붙은 라틴 문자가 나타납니다. EUC-KR 문서를 서유럽용 설정에서 열었을 때입니다(EUC-KR을 UTF-8로 변환). - 엉뚱한 한자와 기호로 바뀐 경우: UTF-8로 저장된 CSV를 Excel에서 더블클릭해 열었을 때 자주 생깁니다(Excel CSV 한글 깨짐).
- 자막이 깨진 경우: 오래된 SRT 자막이 EUC-KR로 저장되어 있으면 해외 플레이어에서 글자가 깨집니다(자막 한글 깨짐).
- 물음표나 �로 바뀐 경우: 변환하지 못한 글자가 다른 기호로 바뀐 것으로, 원래 글자 정보는 이미 사라졌습니다.
주요 원인
- BOM이 없는 UTF-8 CSV를 Excel에서 더블클릭해 열었다.
- EUC-KR(ANSI)로 저장된 파일을 Mac이나 UTF-8만 지원하는 프로그램에서 열었다.
- 웹 페이지나 메일이 실제와 다른 문자 인코딩(charset)을 선언했다.
- 이미 깨진 글자를 다시 다른 인코딩으로 변환했다.
깨진 글자는 항상 복구할 수 있을까?
바이트가 남아 있다면 대부분 복구할 수 있습니다. 하지만 저장이나 전송 중에 ?나 �로 바뀐 글자는 원래 정보가 사라져 되돌릴 수 없습니다. Mojibuster는 복구할 수 있는 부분을 모두 고치고, 되돌릴 수 없는 곳이 몇 군데인지 알려 줍니다.
글자 깨짐 예방하기
- 파일은 UTF-8로 저장하고, Excel에서 열 CSV는 UTF-8(BOM) 형식으로 저장합니다.
- HTML에는
<meta charset="utf-8">을 넣고, MySQL과 MariaDB에서는utf8mb4를 사용합니다. - 데이터를 가져올 때 인코딩을 자동 감지에 맡기지 말고 직접 지정합니다.
- 인코딩 변환은 시스템 경계에서 한 번만 합니다.
자주 묻는 질문
깨진 한글을 원래대로 되돌릴 수 있나요?
네. 대부분의 글자 깨짐은 다른 인코딩으로 읽혔을 뿐이라 올바르게 다시 읽으면 복구됩니다. 위 칸에 붙여 넣거나 파일을 끌어다 놓으면 Mojibuster가 자동으로 복구합니다.
파일이 손상되거나 바이러스에 감염된 건가요?
아닙니다. 글자 깨짐은 표시 문제이며 바이러스가 아닙니다. 대부분은 데이터도 그대로 남아 있습니다.
글자 깨짐과 �는 어떻게 다른가요?
ÇÑ±Û 같은 깨짐에는 원래 바이트가 남아 있어 복구할 수 있습니다. �는 읽지 못한 바이트 대신 들어간 기호로, 원래 글자는 이미 사라졌습니다.
텍스트가 업로드되나요?
아니요. 복구는 모두 브라우저 안에서 이루어지며, 텍스트는 전송되거나 저장되지 않습니다.