"UTF-8"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
(사용자 3명의 중간 판 18개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
;UCS Transformation Format—8-bit; UTF-8; utf8
;UCS Transformation Format—8-bit; UTF-8; utf8
*유니코드 문자인코딩 방식 중 하나
*유니코드 문자인코딩 방식 중 하나
*가변길이 인코딩
*가변길이 인코딩
:문자 1개를 나타내기 위해 1~4바이트 사용
:문자 1개를 나타내기 위해 1~4바이트 사용
<syntaxhighlight lang='console'>
mysql> SELECT * FROM information_schema.CHARACTER_SETS WHERE CHARACTER_SET_NAME='utf8';
+--------------------+----------------------+---------------+--------+
| CHARACTER_SET_NAME | DEFAULT_COLLATE_NAME | DESCRIPTION  | MAXLEN |
+--------------------+----------------------+---------------+--------+
| utf8              | utf8_general_ci      | UTF-8 Unicode |      3 |
+--------------------+----------------------+---------------+--------+
1 row in set (0.00 sec)
</syntaxhighlight>
:→ UTF-8은 최대 4바이트까지라는데, MySQL에서 MAXLEN은 3이다...??<ref>4바이트 짜리는 거의 수요가 없어서 무시한듯??</ref>
==주요 영역==
{{참고|UTF-8 한글}}
*한글 자모: 1100 ~11FF
*한글 (가 ~ 힣): AC00 ~ D7A3
==예시==
{| class="wikitable" style="font-weight: bold"
!colspan=2|문자
! Binary code point
! 2진수
! 16진수
|-
|$ || <code>U+0024</code>
|align=right|<code>{{fontcolor|red|0100100}}</code>
|align=right|<code>0{{fontcolor|red|0100100}}</code>
|align=right|<code>{{fontcolor|red|24}}</code>
|-
|¢ || <code>U+00A2</code>
|align=right|<code>{{fontcolor|green|00010}}{{fontcolor|red|100010}}</code>
|align=right|<code>110{{fontcolor|green|00010}} 10{{fontcolor|red|100010}}</code>
|align=right|<code>{{fontcolor|green|C2}} {{fontcolor|red|A2}}</code>
|-
|€ || <code>U+20AC</code>
|align=right|<code>{{fontcolor|blue|0010}}{{fontcolor|green|000010}}{{fontcolor|red|101100}}</code>
|align=right|<code>1110{{fontcolor|blue|0010}} 10{{fontcolor|green|000010}} 10{{fontcolor|red|101100}}</code>
|align=right|<code>{{fontcolor|blue|E2}} {{fontcolor|green|82}} {{fontcolor|red|AC}}</code>
|-
|𤭢 || <code>U+24B62</code>
|align=right|<code>{{fontcolor|#C000C0|000}}{{fontcolor|blue|100100}}{{fontcolor|green|101101}}{{fontcolor|red|100010}}</code>
|align=right|<code>11110{{fontcolor|#C000C0|000}} 10{{fontcolor|blue|100100}} 10{{fontcolor|green|101101}} 10{{fontcolor|red|100010}}</code>
|align=right|<code>{{fontcolor|#C000C0|F0}} {{fontcolor|blue|A4}} {{fontcolor|green|AD}} {{fontcolor|red|A2}}</code>
|}


==같이 보기==
==같이 보기==
*[[EUC-KR]]
*[[EUC-KR]]
*[[UTF-16]]
*[[UTF-16]]
*[[UTF-8 한글]]
*[[아스키 코드]]
*[[PHP utf2euc, euc2utf]]
*[[BOM]]


==참고 자료==
==참고==
*http://en.wikipedia.org/wiki/UTF-8
*http://en.wikipedia.org/wiki/UTF-8
*http://ko.wikipedia.org/wiki/유니코드_범위_목록
*http://www.utf8-chartable.de/


[[분류: UTF-8]]
[[분류: UTF-8]]

2021년 9월 24일 (금) 23:18 기준 최신판

1 개요[ | ]

UCS Transformation Format—8-bit; UTF-8; utf8
  • 유니코드 문자인코딩 방식 중 하나
  • 가변길이 인코딩
문자 1개를 나타내기 위해 1~4바이트 사용
mysql> SELECT * FROM information_schema.CHARACTER_SETS WHERE CHARACTER_SET_NAME='utf8';
+--------------------+----------------------+---------------+--------+
| CHARACTER_SET_NAME | DEFAULT_COLLATE_NAME | DESCRIPTION   | MAXLEN |
+--------------------+----------------------+---------------+--------+
| utf8               | utf8_general_ci      | UTF-8 Unicode |      3 |
+--------------------+----------------------+---------------+--------+
1 row in set (0.00 sec)
→ UTF-8은 최대 4바이트까지라는데, MySQL에서 MAXLEN은 3이다...??[1]

2 주요 영역[ | ]

  • 한글 자모: 1100 ~11FF
  • 한글 (가 ~ 힣): AC00 ~ D7A3

3 예시[ | ]

문자 Binary code point 2진수 16진수
$ U+0024 0100100 00100100 24
¢ U+00A2 00010100010 11000010 10100010 C2 A2
U+20AC 0010000010101100 11100010 10000010 10101100 E2 82 AC
𤭢 U+24B62 000100100101101100010 11110000 10100100 10101101 10100010 F0 A4 AD A2

4 같이 보기[ | ]

5 참고[ | ]

  1. 4바이트 짜리는 거의 수요가 없어서 무시한듯??
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}