인프런 커뮤니티 질문&답변

디맂님의 프로필 이미지
디맂

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

Serialization #3 this.name

작성

·

194

0

안녕하세요!

강의를 수강하다가 질문이 생겨서 글 남깁니다.


Serialization #3[08:30]

name = "ABCD"의 문자열의 길이는 4이지만 byte배열로 변환하면 길이가 4byte가 아니라 8byte가 되는 것 까지는 이해하였습니다. 왜냐하면 C#은 UTF-16을 사용하므로 UTF-16은 문자들이 각 2Byte이기 때문입니다.

Encoding.Unicode.GetByteCount(this.name)에서

UTF-16기준으로의 바이트 배열로 변환됐을 때의 수를 가져오는 것이니까 그러면 위와 같이 8Byte인 것 같아서 어떻게 4Byte인지 궁금증이 생겨 질문 남깁니다!

 

 

답변 1

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

네 인코딩 하나를 정해서 맞춰줘야 하는데,
UTF-16 (Unicode)라면 8바이트가 맞고 UTF-8로 하면 4바이트가 됩니다.

디맂님의 프로필 이미지
디맂
질문자

감사합니다 !

디맂님의 프로필 이미지
디맂

작성한 질문수

질문하기