유니코드 관련 문답
몇 가지 질문들
여기까지 풀어놓은 이야기들은 이전에도 몇 번 한 적이 있고, 다른 곳에서도 들을 수 있는 이야기들이었는데…. 문제는 이런 글을 읽어도 늘 아리송하고 헷갈리는게 하나 둘이 아니라는 점이다. 그래서 FAQ 형식으로 몇 가지 질문을 살펴보도록 하자.
더 보기 »유니코드 관련 문답
여기까지 풀어놓은 이야기들은 이전에도 몇 번 한 적이 있고, 다른 곳에서도 들을 수 있는 이야기들이었는데…. 문제는 이런 글을 읽어도 늘 아리송하고 헷갈리는게 하나 둘이 아니라는 점이다. 그래서 FAQ 형식으로 몇 가지 질문을 살펴보도록 하자.
더 보기 »유니코드 관련 문답
컴퓨터는 어떻게 글자를 표현할까 컴퓨터가 처리하는 모든 데이터는 궁극적으로 2진수로 표현되는 숫자값이다. 따라서 컴퓨터가 문자를 처리하도록 하기 위해서는 각각의 글자에 고유한 번호를 부여하여 특정한 숫자값과 특정한 글자를 1:1 로 맵핑하는 것이다. 이러한 문자 맵에서 가장 잘 알려져 있는 것이 아스키(ASCII) 코드이다. 아스키코드는 128개의 알파벳 문자 및 숫자와 문장부호, 몇 가지 괄호와 연산자 문자 그리고 프린터 출력에 필요한 제어 문자등을 정리한 코드 체계이다. 128개의 글자를 포함하고 있기 때문에 (물론 그 중에는 눈에 보이지 않는 글자도 있다.) 이 가지수는 모두 2의 7제곱이며… 더 보기 »유니코드 문자열과 문자열 인코딩
유니코드 한글의 코드 값 구성 원리와 이를 토대로 각 음절의 초/중/종성을 분리하는 방법은 본 블로그의 다른 글들을 참고하면 되겠다. (원래 참조했던 외부글이 있지만, 시간이 오래 지나서 그런지 삭제되었다.) 유니코드 한글에서 초성을 분리하는 일은 그리 어렵지 않은데, 중성 및 종성으로 사용되는 28자, 21자의 간격을 이용해서 한글 자모 테이블의 초성의 인덱스를 구할 수 있다. 여기서 한가지 문제는 위 코드로 구한 초성 값은 한글 자모의 문자라는 것이다. 한글자모의 코드가 연속되는 경우, 플랫폼에 따라서는 자동으로 합자가 생성되기도 하기 때문에, “안녕하세요”를 위 함수로 초성을 추출하면… 더 보기 »Objective-C 한글의 초성을 분리하기
이 글에 언급된 몇몇 내용은 부정확한 추측이라 보다 정확하게 정리한 글을 다시 작성하였습니다. 유니코드에 대한 개요는 이 글을 참고해주세요. 문자열이란 무엇일까요 파이썬으로 한글을 출력하는 프로그램을 만들어서 명령창에서 실행해보면, 한글이 죄다 깨어져 나오는 문제를 경험합니다.(물론, 조금만 신경쓰면 그럴 일은 없습니다) 또는 윈도에서 zip으로 압축한 파일을 리눅스에서 열어보면 또 역시나 한글 이름이 와장창 깨어져서 압축이 풀립니다. 멀리까지 갈 필요도 없이, 이름이 일본어로 되어있는 파일도 압축했다가 나중에 풀어보면 또 이름이 와장창 깨어져서 나오거나, 아예 압축이 풀리지 않는 불상사가 일어나기도 합니다. 이런 문제점들은 사실… 더 보기 »20090420 :: 모든 것에 대한 집합, 유니코드