2011년 9월 23일 금요일

ASP.NET에서 QueryString에 한글을 전달해야 할 경우.....

ASP.NET에서 파라메터로 한글 데이터를 보내야 할 경우가 있다.

아무 생각없이 string 형태를 그대로 넣어주면......

깨져서 전달되기 때문에 사용할 수 없다.

그럴경우 아래의 코드를 사용하면, 손쉽게 해결할 수 있다.


byte[] name = Encoding.UTF8.GetBytes(textBox1.Text);
string str = "";

for (int i = 0; i < name.Length; i++ )
{
    str += "%" + string.Format( "{0:x2}", name[i] );
}


1. 입력받은 데이터를 UTF8 형태의 Byte배열로 변환한 후에
2. Byte를 HexString으로 변환하여 '%' 문자를 붙여주면 된다.

ASP.Net 페이지에서 아주 쿨하게 String을 그대로 읽어올 수 가 있게 되는걸 확인할 수 있다.

댓글 없음:

댓글 쓰기