찾기
내용으로 건너뛰기
추적
문서의 이전 판을 선택했습니다!
저장하면 이 자료로 새 판을 만듭니다.
미디어 파일
{{tag>tech unicode utf-8 문자인코딩}} ======유니코드 (Unicode)====== 우분투와 같은 리눅스에서는 파일이름에도 [[UTF-8]]을 사용할 수 있는데 윈도우는 UTF-8파일 이름을 지원하지 않는다. [[macos]]에서는 문서내용에는 일반적인 유니코드를 쓰지만, 파일시스템에는 [[unicode_nfd_dokuwiki|Unicode NFD]]를 쓴다. * Win-Rar은 3.80부터 유니코드 이름을 갖는 파일을 지원한다. * [[도쿠위키|도쿠위키]]는 최신버전인 Anteater부터 유니코드파일이름을 지원한다. * [[http://leanu.tistory.com/380|한글 초중종성 자모 코드로 유니코드 만드는 공식]] ((Unicode(UCS2)로 구성된 한글은 초성 중성 종성으로 분리가 된다. 종성 = characterValue % 28 중성 = ( (characterValue - 종성 ) / 28 ) % 21 초성 = ( ( (characterValue - 종성 ) / 28 ) - 중성 ) / 21 이 값들은 인덱스 값이지 실제 Unicode 테이블표에 매치되지 않는다. 매치 시키려면 각각 초성 중성 종성의 시작 unicode 값들을 더해주면 된다. ( 초성 : 0x1100 , 중성 : 0x1161 , 종성 : 0x11A7 ) 또한 초성 중성 종성의 값들로 원래의 글자값을 만들려면 다음의 공식을 이용하면 된다. 물론 각각의 값들은 인덱스 값이어야 한다. (실제 테이블 매치 값이면 각각의 값들을 빼준다.) characterValue = ( (초성 * 21) + 중성) * 28 + 종성 + 0xAC00 한국어 자모와 글자에 대한 Unicode table 표를 참조하고 싶다면 아래의 링크로 들어간다. 자모 : http://www.unicode.org/charts/PDF/U1100.pdf 음절 : http://www.unicode.org/charts/PDF/UAC00.pdf)) =====BOM 이란?===== [[wp>Byte_order_mark|BOM]] (Byte Order Mark)은 '바이트 순서 표시'이다. 유니코드가 little-endian 인지 big-endian 인지 아니면 UTF-8 인지 쉽게 알 수 있도록, 유니코드 파일이 시작되는 첫부분에 보이지 않게, 2~3바이트의 문자열을 추가하는데 이것을 BOM이라고 함. 텍스트 에디터 화면에서는 보이지 않고, 헥사 에디터(Hex Editor)*로 열었을 때만 보임. ^Code^BOM^ |UTF-8|EF BB BF| |UTF-16(little-endian)|FF FE| |UTF-16(big-endian)|FE FF| UTF-8 코드는 원래 그 자체로 구별이 가능하기 때문에 괜히 BOM이 필요없다고 함. UTF-8에는 BOM이 **없는 것이 보통**인데, 오래된 프로그램은 BOM이 있는 UTF-8 파일에 오작동할 수 있다. 윈도우의 메모장에서 UTF-8 로 저장을 하면 항상 BOM을 붙이다. 그런데 인터넷에 올려서 리눅스 서버에서 사용될 HTML/CSS/XML 파일을 UTF-8로 작성할 때에는 BOM이 있으면 문제가 생길 수 있다. * 울트라에디트의 헥사 모드(Ctrl+H)로 UTF-8 파일을 보면, 16비트 유니코드처럼 보이고 BOM이 있든 없든 항상 FF FE 라는 엉뚱한 BOM이 나타난다. 이것은 울트라에디터가 유니코드를 편집할 때, 내부적으로 '16비트 little-endian 유니코드 (UTF-16LE)'로 변환하여 편집하기 때문이다. 진짜 헥사 에디터로 보아야만 UTF-8의 BOM인 EF BB BF 가 제대로 보이게 된다. 물론 BOM이 없는 UTF-8이라면 BOM이 없는 것으로 나온다. * [[tech:notepad|]]과 같은 프로그램으로 완벽하게 유니코드문서를 편집할 수 있다. =====big-endian VS little-endian===== MS윈도에서 내부적으로 사용되는 유니코드(UTF-16LE)는 16비트 즉 2바이트로 하나의 글자를 표현합니다. 바이트가 2개니까 이 바이트에 순서가 정해져 있어야 합니다. big-endian 은 있는 순서 그대로 바이트를 자연스럽게 나열하는 것이고, little-endian 은 속도를 빠르게 하기 위해서 거꾸로 나열하는 것입니다. MS윈도의 유니코드는 리틀 엔디안 little-endian이 기본값입니다. 빅 엔디안 유니코드는, 울트라에디터 v11 등의 일부 프로그램에서 전혀 인식하지 못했습니다. =====같이 보기===== * [[http://unicode.org/standard/translations/korean.html|유니코드 콘소시엄]] * [[wp>Byte_order_mark|BOM]]
저장
미리 보기
취소
편집 요약
참고: 이 문서를 편집하면 내용은 다음 라이선스에 따라 배포하는 데 동의하는 것으로 간주합니다:
CC Attribution-Noncommercial-Share Alike 4.0 International
연결문서
지메일에서 CSV 불러오기 오류 해결 방법
리눅스에서 삼바를 마운트하기 (Mount CIFS)
MP3 태그를 유니코드로 변환(Mp3 Tag Unicode Converting)
Osxfuse (macfuse, macfusion)
Php Auto-convert UTF-8
UTF-8
문서 도구
문서 보기
이전 판
연결문서
맨 위로
다크 모드로 보기
☀️
Toggle Menu
기술
너두 고쳐두 됩니다.
사이트 도구
최근 바뀜
미디어 관리자
사이트맵
사용자 도구
등록
로긴
최근 수정된 문서
포진
남성난임
자위 행위 (masturbation)
자위
제거됨
유방의 엽상종양 Phyllodes Tumor
[유방암 위험]
황체홀몬 (Progesterone)
[역할]
Openclaw
[models]
Llama.cpp
[Macmini M4 32gb]
Qwen3.5
Llama
만듦
남인우
만듦
정자회복플랜
Nai
단순포진 (Herpes simplex)
[진단]
자궁근종 (Uterine myoma)
Minio
[Minio]
태아 서맥 (Fetal Bradycardia)