[C#] string의 byte 길이 구하기

 

아래 URL에 문자열의 byte 값 이라는 글의 답입니다.

http://www.hoons.kr/board.aspx?Name=qacshap&Mode=2&BoardIdx=24319&Key=&Value=

 

만약 문자 메세지를 보내는 프로그램을 만든다고 합시다.
그렇게 되면 한번 보낼 때 80byte만 보낼 수 있도록 제약을 걸어야 하겠죠?

C#에서 string 클래스의 length 프로퍼티는 해달 문자열의 길이를 알려주죠
문제는 한글인 경우 1글자가 1byte가 아니라는 점입니다.

이와 같은 경우 원하는 Encoding Type으로 변환한 후 Byte의 길이를 얻으면 됩니다.
CODE로 아래와 같습니다.

string str = _textBox.Text;
int count = Encoding.Default.GetByteCount(str);
 

image

 

 

 

 

 

 

 

참고로 해당  Encoding에 따라 byte의 길이가 틀려지는 것에 유념하세요~

Encoding.ASCII.GetByteCount(str) // 6
Encoding.UTF8.GetByteCount(str)  //16
chaoskcuf
프로그래밍/TIP& Study 2009/06/22 17:49

트랙백 주소 : http://chaoskcuf.com/trackback/231

댓글을 달아 주세요

Powerd by Textcube, designed by criuce
rss