BOM 편집하기

IT위키

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.

편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.

최신판 당신의 편집
5번째 줄: 5번째 줄:
<br />
<br />


==인코딩 방식에 따른 BOM 예시==
== 인코딩 방식에 따른 BOM 예시 ==
{| class="wikitable"
{| class="wikitable"
!인코딩 방식
!인코딩 방식
26번째 줄: 26번째 줄:
|}
|}


*ex) 문서 처음 2개의 바이트가 <code>FE FF</code>로 시작되면 그 문서는 UTF-16 Big Endian으로 해석
* ex) 문서 처음 2개의 바이트가 <code>FE FF</code>로 시작되면 그 문서는 UTF-16 Big Endian으로 해석


==UTF-8에서의 BOM==
== UTF-8에서의 BOM ==


===단일 BOM===
=== 단일 BOM ===
UTF-16, 32와 달리 UTF-8은 BOM이 한가지만 존재
UTF-16, 32와 달리 UTF-8은 BOM이 한가지만 존재


*즉, BOM을 표기하지 않을 수 있음
* 즉, BOM을 표기하지 않을 수 있음


===UTF-8에서 발생하는 문제===
=== UTF-8에서 발생하는 문제 ===


*에디터에 따라서 BOM을 표기하기도, 표기하지 않기도 함
* 에디터에 따라서 BOM을 표기하기도, 표기하지 않기도 함
*외형상 동일하지만, 실제 내용엔 차이가 발생
* 외형상 동일하지만, 실제 내용엔 차이가 발생
*외형상 동일하지만, 실제 내용엔 차이가 발생
* 외형상 동일하지만, 실제 내용엔 차이가 발생
*line by line으로 값을 읽거나, 전체에 대한 hash를 적용하는 경우 차이 발생
* line by line으로 값을 읽거나, 전체에 대한 hash를 적용하는 경우 차이 발생


{| class="wikitable"
{| class="wikitable"
47번째 줄: 47번째 줄:
!BOM이 없는 경우
!BOM이 없는 경우
|-
|-
|[[파일:BOM이_있는_예시.png|대체글=|361x361픽셀]]
|[[파일:BOM이 있는 예시.png|섬네일]]
|[[파일:BOM이_없는_예시.png|대체글=|406x406픽셀]]
|[[파일:BOM이 없는 예시.png|섬네일]]
|}
|}


===대안===
=== 대안 ===
에디터의 설정을 통하여 BOM 삽입 여부 결정
에디터의 설정을 통하여 BOM 삽입 여부 결정


*상호호환성을 위해 데이터 사용처의 수요에 맞추어 설정하는 것이 맞으나,
* 상호호환성을 위해 데이터 사용처의 수요에 맞추어 설정하는 것이 맞으나,
*수요가 확실치 않을 경우 일반적으로 UTF-8은 BOM 없이 사용하는 경우가 많음
* 수요가 확실치 않을 경우 일반적으로 UTF-8은 BOM 없이 사용하는 경우가 많음
**BOM이 있는 경우 일부 소스코드 등에서 에러 발생
** BOM이 있는 경우 일부 소스코드 등에서 에러 발생
**UTF-8에서 BOM이 없다고 잘못 읽혀지는 경우는 없음
** UTF-8에서 BOM이 없다고 잘못 읽혀지는 경우는 없음


[[파일:UTF-8_BOM_설정_예시.png|대체글=]]
[[파일:UTF-8 BOM 설정 예시.png|왼쪽|섬네일]]
 
<br />
== 참고 문헌 ==
 
* [http://blog.wystan.net/2007/08/18/bom-byte-order-mark-problem UTF-8 인코딩에서의 BOM(Byte Order Mark) 문제]
IT위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는 IT위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다. 저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소 편집 도움말 (새 창에서 열림)
원본 주소 "https://itwiki.kr/w/BOM"