HelloCho

[C#] Encoding 한글 깨질때 본문

C#

[C#] Encoding 한글 깨질때

쵸송 2020. 6. 11. 15:07

html 코드를 읽을 일이 생겨서

<meta charset="utf-8">

html 코드에서 "UTF-8" charset 이길래 "UTF-8"로 인코딩을 했는데 아무리해도 한글만 깨져서 나오는것이였다.

아무리 encoding을 해도 한글이 깨질때 확인해야 하는 것이 있다.

reponse로 오는 CharacterSet 값으로 인코딩이 어떻게 되어서 오는지 확인해보자.

var httpWebResponse = (HttpWebResponse)response;
string characterSet = httpWebResponse.CharacterSet;

CharacterSet 값을 확인해보니 "UTF-8"이 아닌 "EUC-KR" 로 인코딩이 되어있는 것을 확인하였다.

다음 예시는 참고 코드입니다.

using (WebResponse response = request.GetResponse())
{
	var httpWebResponse = (HttpWebResponse)response;
	string characterSet = httpWebResponse.CharacterSet;

	using (Stream stream = response.GetResponseStream())
	{
        using (StreamReader streamreader = new StreamReader(stream, EUCKR, true))
        {
        	html = streamreader.ReadToEnd();
        }
    }
}

 

https://docs.microsoft.com/ko-kr/dotnet/api/system.net.httpwebresponse.characterset?view=netcore-3.1

'C#' 카테고리의 다른 글

[C#]utf-8에서 euckr로 인코딩하기  (0) 2021.06.02
[C#] 2021 C# 코딩 가이드  (0) 2021.05.04
[C#] UTF8 인코딩 하기  (0) 2021.03.25
[C#] http post 방식으로 json Data Parameter 보내기  (0) 2021.03.22
[C#] euc-kr 인코딩 하기  (0) 2020.05.22
Comments