개발/C# .NET

C# 한글깨짐 처리

xwing 2011. 4. 20. 13:22
 이미 사용중인 Sybase에 접근해서 내용을 가져오는데, 도무지 한글이 깨진것을 어떻게 할수가 없어서...
이렇게 확인부터 하자

깨진 한글을 어떻게 제대로 표시할지 찾아보자..
원본 문자열이 어떤방식의 charset으로 되어 있는지.. 어떻게 다시 제대로 표시할지 찾아보기 위해 간단한 메서드를 만들었다.

[코드]
       public void convertCheck(string str)
        {
            Encoding encKr = Encoding.GetEncoding("euc-kr");
            EncodingInfo[] encods = Encoding.GetEncodings();
            Encoding destEnc = Encoding.UTF8;

            foreach (EncodingInfo ec in encods)
            {
                Encoding enc = ec.GetEncoding();
                byte[] sorceBytes = enc.GetBytes(str);
                byte[] encBytes = Encoding.Convert(encKr, destEnc, sorceBytes);

                System.Diagnostics.Debug.WriteLine(string.Format("{0}({1}) : {2}", enc.EncodingName, enc.BodyName, destEnc.GetString(encBytes)));
            }            
        }

string  str 을 받아서 지원가능한 모든 인코딩으로 돌려 표시한다.
이때 제대로 표시되는 것이 있다면 해당 인코딩을 쓰면 될 것이다. ㅋㅋ
몇시간을 지x을 했네 그려~ ㅠㅠ
Sybase 정말~ 쓰기싫다.. 잘 붙지도 않고.. 한글깨지고... 덴장!!!!
 

'개발 > C# .NET' 카테고리의 다른 글

[MVC] EnumDropDownList  (0) 2011.06.22
자동 생성된 Machinekey 읽기  (0) 2011.04.15
[C#] sysbase 접속  (0) 2011.02.21