UTF-8에 바이너리 자료를 인코딩할 때 제일 효율적인 방법은 뭐가 있을까요?
이메일이나 유즈넷에서는 바이너리 파일을 텍스트로 변환해서 전송했습니다.
http://en.wikipedia.org/wiki/Binary-to-text_encoding
base64, qp, uuencode, yENC 등이 있었죠.
위의 방법들은 6이나 7비트 인코딩입니다.
UTF-8에서는 7비트가 8비트로 표현되므로 낭비는 없지만 화면을 적게 차지하기 위해 글자 수를 줄이고 싶으면 2,3,4바이트를 쓸 수도 있을 겁니다.
이 때 어떤 인코딩을 쓰거나 만들면 효율적일까요?
고려할 점은 다음과 같습니다.
-캐릭터 수가 적어야 된다.
-HTML에서 표시가능해야 된다.
-일반적인 게시판에서 표시가능해야 된다.
-일반적인 데이터베이스에서 짤리지 말아야 된다.
-인쇄시 표시가 되는 문자만을 쓸 경우
http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
http://en.cppreference.com/w/cpp/string/byte/isprint
유니코드일 경우의 isprint
-UTF-8, cp949, EUC-KR을 쓸 경우
후보는 다음과 같습니다.
Encoding standardsThe most used forms of binary-to-text encodings are:
hexadecimal
base64
quoted-printable
uuencoding
yEnc
Ascii85
BinHex
Percent encoding
Motorola S-record and the very similar Intel HEX
8비트 이상이라면 새로 만들거나 여기 안 나온 방법을 쓸 수 있을 겁니다.
조언 부탁합니다.
댓글 달기