유니코드 문자 검사기
텍스트를 유니코드 코드포인트 단위로 분해하여 각 문자의 U+ 코드포인트, 십진수 값, UTF-8 바이트, HTML 엔티티를 보여줍니다 — 100% 브라우저에서 실행되며 업로드되지 않습니다.
| 문자 | 코드포인트 | 십진수 | UTF-8 (16진수) | UTF-16 (16진수) | HTML 엔티티 |
|---|---|---|---|---|---|
| A | U+0041 | 65 | 41 | 0041 | A |
| 😀 | U+1F600 | 128512 | F0 9F 98 80 | D83D DE00 | 😀 |
🔒 모든 문자는 브라우저에서 처리되며 업로드되지 않습니다.
각 문자의 실체를 확인하세요
텍스트를 붙여넣거나 입력하면 각 문자와 함께 유니코드 코드포인트(예: U+0041), 십진수 값, 16진수 UTF-8 바이트 열, HTML 숫자 엔티티(예: A)가 실시간 표로 즉시 표시됩니다. 코드포인트 단위로 순회하기 때문에 😀 같은 이모지나 상위 평면 문자도 두 조각으로 깨지지 않고 한 행으로 나타납니다. 전체 분석 결과를 탭으로 구분된 텍스트로 복사해 스프레드시트나 버그 리포트에 붙여넣을 수 있습니다.
코드포인트와 바이트가 다른 이유
코드포인트는 유니코드가 문자에 부여한 추상적인 번호이고, UTF-8은 그 번호를 바이트로 인코딩하는 한 방식입니다. 일반 ASCII 문자는 1바이트, 강세가 있는 라틴 문자는 2바이트, 이모지는 4바이트를 사용합니다. UTF-16 열은 JavaScript 문자열이 실제로 쓰는 코드 유닛을 보여주므로 상위 평면 문자는 대리 쌍(예: D83D DE00)으로 나타나는데, 이것이 바로 '😀'.length가 2인 이유입니다. 코드포인트·UTF-8·UTF-16을 나란히 보면 문자열의 보이는 길이와 바이트 길이가 왜 다른지 분명해지며, 인코딩 문제나 데이터베이스 길이 제한, 예상치 못한 글자 깨짐을 디버깅할 때 매우 유용합니다.
자주 묻는 질문
이모지나 상위 평면 문자는 어떻게 처리하나요?
텍스트를 유니코드 코드포인트 단위로 순회하므로, 이모지처럼 U+FFFF를 넘는 문자는 서로게이트 쌍으로 쪼개지지 않고 완전한 4바이트 UTF-8 인코딩과 함께 한 항목으로 표시됩니다.
십진수 값과 HTML 엔티티의 차이는 무엇인가요?
둘 다 같은 숫자에서 나옵니다. 십진수 열은 코드포인트를 10진법으로 나타낸 값이고, HTML 엔티티는 같은 숫자를 &#NNN; 형태로 감싼 것으로 HTML에 바로 붙여넣을 수 있습니다.
입력한 텍스트가 어딘가로 업로드되나요?
아니요. 모든 분석은 브라우저 안에서 자바스크립트로 처리됩니다. 텍스트는 기기를 벗어나지 않으며 서버로 전송되는 것은 없습니다.