C#/네트워크
[c#][서버] Unicode & Encoding / UTF8 vs UTF16
goliot
2024. 6. 9. 15:38
반응형
Ascii 코드
- 1바이트로 문자를 표현
- ex) A = 0x41(65), ! = 0x21(33)
UniCode
- 다른 나라의 언어도 표현하기 위해 2바이트를 사용해 문자를 표현
- 그럼에도 표현하지 못하는 문자는 3바이트를 사용
- ex) ㅎ = 0x001112, A = 0x000041
Encoding
- 가변적인 방법으로 컴퓨터에게 문자를 어떻게 매핑할지 결정하는 것
- 매번 최대 바이트로 사용하면 낭비가 심하기 때문에 분류를 해둔 것
UTF-8
- 한글이 속한 분류
- 영문은 1byte, 한글은 3byte로 사용
UTF-16
- BMP까지는 2바이트(한글, 영문 모두), 다음은 4바이트
- BMP = 많이 쓰는 언어, 해당 범위를 넘어가면 음악기호같은 잘 안쓰는 부분
- 대부분의 디폴트는 UTF16
반응형