UTF-8 BOM ( Byte order Mark )
유니코드 인코딩에는 여러가지 방식이 있으며, 대표적인 UTF-8을 비롯해서 UTF-16, UTF-32 등이 있다.
이렇게 비슷한 방식을 사용하는 문서는 BOM(Byte Order Mark)으로 구별이 되며, 문서 맨 앞에 눈에 보이지 않는
특정 Byte를 넣은 다음 이것을 해석해서 정확한 인코딩 방식을 인지한다.
1. BOM의 종류
인코딩 방식 |
BOM ( Byte Order Mark ) |
UTF-8 |
EF BB BF |
UTF-16 Big Endian |
FE FF |
UTF-16 Little Endian |
FF FE |
UTF-32 Big Endian |
00 00 FE FF |
UTF-32 Little Endian |
FF FE 00 00 |
UTF-8은 다른 인코딩 방식과는 다르게 BOM의 순서가 EF BB BF로 정해져 있다. 그래서 이 BOM은
바이트 순서(Byte Order)와 상관없기 때문에 UTF-8 Signature 라고 불린다.
UTF-8 BOM 형식은 윈도우의 메모장 등 일반 편집기에서 자동으로 BOM 을 추가한다.
그러나, Linux 나 Unix 계열에서는 웹 페이지에서 BOM을 여백으로 처리하는 경우가 있으며, 개발자 입장에서는
눈에 보이지는 않지만 여백이 발생하므로 당황하는 경우가 가끔있다. 에디트 플러스 같은 에디터로
BOM 이 없는 UTF-8 형식으로 저장하면 문제가 해결된다.
|