ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HTML,JSP 에서 한글이 깨짐 - 인코딩 설정
    IT/Web 2019. 8. 4. 19:33

    #개요

    인코딩 설정을 다 맞춰놓은 툴, 그리고 기본 인코딩 설정이 이미 셋팅되어 있던 중장기 프로젝트에서 작업을 하는 기간동안엔, 사실 한글이 깨지는 현상이 잘 없어서 보통 신경쓰지 않는다.

    그렇다보니, 새로 어떤 작업환경을 만들거나, 새로 어떤 프로젝트를 만드는 경우에 일어나는 한글깨짐 현상은 항상 개발자들을 짜증나게 한다.

    고수들이야 인상 찌푸리면서도 뚝딱뚝딱 해결하겠지만, 일부 초보자들은 시작부터 허우적대는 경우가 생긴다.

    잘 기억해놓든 어디 저장해놨다가 필요할때마다 빠르게 해결하자.

     

     

    #본문

    출처https://ofcourse.kr/html-course/%EC%9D%B8%EC%BD%94%EB%94%A9

     

    HTML 파일을 작성했는데 한글이 깨져 보이는 현상이 나타날 수 있습니다.

    이는 파일의 인코딩 방식과, 웹 브라우저가 사용하는 인코딩 방식이 서로 달라서 나타나는 문제로,

    하나의 인코딩 방식으로 통일 해 주어야 합니다.

     

     

    인코딩 방식

    현재 한국에서 사용되는 인코딩 방식으로는 크게 euc-kr 방식과 UTF-8 방식이 있습니다.

     

    euc-kr 방식은 원래 영어만을 고려한 1byte 길이의 ASCII 라는 인코딩 방식을 확장하여 한글을 사용할 수 있도록 만든

    2byte 길이의 국가 언어 코드입니다.

    국가 언어코드. 즉 우리나라에서만 쓸 수 있도록 만든 코드이며 세계 어디에서나 공통으로 사용되는 인코딩 방식이 아니기 때문에, 다른 언어를 사용하는 환경(외국 등)에서는 한글 페이지를 제대로 볼 수 없는 문제가 발생합니다.

     

    이를 해결하기 위해 새로운 인코딩 방식이 개발되었는데, 그중 가장 보편화된 인코딩이 UTF-8입니다. (3byte)

    예전에는 용량이 작은 euc-kr 방식을 선호하는 곳들도 많았으나, 현재는 용량 문제보다 표준화 및 글로벌 환경을 고려해야 하므로

     

     

     

    해결법

    최신 IDE(통합 개발 환경)를 사용 하신다면, 기본적으로 인코딩 방식은 UTF-8로 설정이 되어 있을 것입니다.

    하지만 Windows 운영체제는 기본 인코딩 값으로 여전히 euc-kr방식을 사용하기 때문에,

    이 페이지가 UTF-8 방식으로 인코딩 되었음을 알려야 합니다.

     

    HTML5의 경우 다음 코드를 <head> 태그 안에 삽입하여 페이지 언어셋이 utf-8임을 브라우저에 알립니다. (기본)

    <meta charset="utf-8">

     

    XHTML의 경우 다음 코드를 <head> 태그 안에 삽입하면 됩니다.

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    

     

    JSP의 경우 다음 코드를 <head> 태그 안에 삽입하면 됩니다.

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

     

    메모장을 사용하신다면, 저장 전에 하단의 인코딩 드롭박스에서 UTF-8을 선택하셔야 합니다.

     

     

     

     

     

     

     

    #그래도 안되면..

    위의 코드를 추가하였음에도 한글이 깨진다면 그건 이클립스 환경설정에서 파일 인코딩 형식을 바꿔줘야 된다.

    아래 포스트를 따라해보자.

    https://suzxc2468.tistory.com/174

     

     

     

     

     

     

     

    =========끗=========

    댓글

다치지 말고 운동하자.