본문 바로가기

???

만들면서 알아보는 Character set과 encoding

이라는 제목으로 글을 써보려 했는데...
일단 캐릭터셋 정의하는 예제 코드만 올려봅니다. -_-;

 

article =<<-ARTICLE

경고: 건강에 해로운 담배, 일단 흡연하게 되면 끊기가 매우 어렵습니다.


담배연기에는 발암성 물질인 나프틸아민, 니켈, 벤젠, 비닐 크롤라이드, 비소, 카드뮴이 들어있습니다.

ARTICLE


charset = {}

article.each_char do |char|

  charset[char.to_sym] = true

end


puts "문서 사이즈: #{article.size}"

puts "캐릭터셋 사이즈: #{charset.size}"

puts "문서: {#{article}}"


charset = charset.sort { |a,b| a.to_s <=> b.to_s }

charset_as_string = ''

charset.each do |char, ignore|

  charset_as_string += "'#{char}',"

end

puts "캐릭터셋: #{charset_as_string.chop}"


실행 결과는... 

표현할 캐릭터의 셋을 정의했으니 각 캐릭터를 binary로 저장할 때 어떤 값을 부여할지 (혹은 반대로 binary 값에서 캐릭터를 어떻게 찾을지) 인코딩 메소드를 구현해주면 얼렁뚱당 엉성한 인코딩 시스템이 완성(?)되겠습니다.