tomai
로그인
무료 · 개발자 도구

HTML 인코더 / 디코더

HTML 엔티티와 특수 문자 인코딩 및 디코딩

입력
출력

컨텍스트별로 하나의 이스케이프 처리만 수행

올바른 이스케이프 처리 방식은 문자열이 삽입될 위치에 따라 달라집니다:

  • 요소 텍스트에는 < & > 엔티티가 필요하며, 따옴표로 둘러싸인 속성 값의 경우 추가로 따옴표도 이스케이프 처리해야 합니다.
  • URL 또는 JavaScript 문자열 내부에서는 HTML 엔티티를 사용하는 것이 두 가지 면에서 잘못되었습니다 — 중복 인코딩을 유발할 뿐 아니라 심지어 보안 취약점을 다시 발생시킬 수도 있습니다.
  • 이 도구는 각 컨텍스트를 명확히 분리하여, 속성 값으로 안전한 값이 스크립트 내부에서 무단으로 재사용되는 것을 방지합니다.

일부만 이스케이프 처리된 경우는 아예 이스케이프 처리하지 않은 경우보다 더 위험합니다

양방향, 두 스타일

한 번의 클릭으로 인코딩 또는 디코딩하고, 대상 형식에 따라 이름형(&amp;)과 숫자형(&#38;) 출력을 모두 지원합니다.

🔒

필수 5개 문자를 넘어서

모든 비-ASCII 문자를 선택적으로 인코딩하여 어떤 이메일이나 레거시 시스템에서도 동일하게 렌더링되는 안정적인 ASCII 출력을 보장합니다.

🎯

브라우저 안에서의 프라이버시

인코딩/디코딩 전체가 로컬에서 실행됩니다. 라이선스 키, 개인 데이터, 서버에 보내고 싶지 않은 모든 텍스트에 적합합니다.

자주 묻는 질문

왜 HTML 인코딩이 필요한가요?

HTML에서 "<"는 태그를 시작하고 "&"는 엔티티를 시작합니다. 이스케이프 없이 사용자 콘텐츠를 넣으면 따옴표나 괄호가 레이아웃을 깨거나 인젝션을 허용할 수 있습니다. 인코딩은 이 문자를 중화하여 텍스트가 그대로 표시되게 합니다.

이름형 vs 숫자형 참조?

&amp; 같은 이름형 참조는 읽기 쉽지만 공통 집합만 다룹니다. &#38; 같은 숫자형(또는 16진수 &#x26;)은 모든 유니코드 코드포인트에 작동합니다. 비-ASCII 텍스트의 보편적 인코딩이 필요하면 숫자형을 사용하세요.

내 텍스트가 어딘가 업로드되나요?

아니요. 모든 것이 순수 JavaScript로 브라우저에서 실행되며, 전송되거나 저장되지 않습니다.

관련 도구

HTML 인코더 / 디코더란?

사용자 입력을 웹 페이지에 삽입할 때 & < > 문자는 위험합니다. "<"는 태그를 시작하고 "&"는 엔티티를 시작하며, 한 문자만 어긋나도 레이아웃이 깨지거나 인젝션이 가능해집니다. HTML 인코딩은 이 문자들을 엔티티 형태로 바꿔서 텍스트가 마크업으로 해석되지 않고 쓰인 대로 표시되게 합니다. 반대 방향(디코딩)은 엔티티 문자열을 읽을 수 있는 문자로 되돌립니다.

할 수 있는 일

  • & < > " ' 인코딩, 선택적으로 모든 비-ASCII 문자도
  • 명명된 엔티티(amp, lt, gt, quot, apos, copy, nbsp 등) 디코딩
  • 10진·16진 숫자 참조(&, &) 디코딩
  • 이름형과 숫자형 엔티티 변환을 한 번에
  • 완전히 클라이언트 처리: 라이선스 키와 비밀 텍스트도 가능
  • 입력·출력 크기 표시

언제 사용하나

  • HTML이나 템플릿에 넣기 전 사용자 입력 이스케이프
  • CMS나 HTML 이메일용 콘텐츠 준비
  • 피드나 스크랩 소스의 엔티티 인코딩 텍스트 디코딩
  • 브라우저가 문자열을 파싱할 때 무엇을 보는지 이해

개인정보: 인코딩은 전적으로 브라우저에서 발생하며, 붙여넣은 내용이 업로드되지 않습니다.

관련 도구