저는 최근 프로젝트를 진행하고 있는데 그 기능 중 하나가 URL 주소를 기반으로 웹페이지의 소스 코드를 가져오는 것입니다. ASP.NET(C#)에서는 웹 페이지의 소스 코드를 얻는 방법이 여러 가지인 것 같습니다. 저는 매우 간단하고 쉬운 간단한 WebClient를 만들었습니다. 그런데 나중에 매우 짜증나는 문제가 나타났는데, 바로 한자가 왜곡되어 있다는 것이었습니다.
주의 깊게 연구한 결과, 중국어 웹 페이지는 GB2312와 UTF-8의 두 가지 인코딩에 지나지 않습니다. 따라서 다음과 같은 코드가 있습니다.
으아악조금 설명하자면 여기서는 WebClient를 사용하여 wc 개체를 생성합니다(이 이름은 약간 어색합니다). 그런 다음 wc 개체의 DownloadData 메서드를 호출하고 URL 값을 전달한 다음 바이트 배열을 반환합니다. 기본적으로 GB2312는 이 바이트 배열을 읽고 문자열로 변환하는 데 사용됩니다. 웹페이지 소스코드의 문자열에서 charset="utf-8"과 같은 정보를 찾는 등 웹페이지의 인코딩 형식의 특징적인 문자를 찾아 현재 웹페이지의 인코딩 형식을 결정합니다.
GetCharset 함수는 현재 웹페이지의 인코딩 형식을 얻는 데 사용됩니다. 구체적인 코드는 다음과 같습니다.
으아악
웹 페이지의 HTML 소스 코드를 얻기 위해 C#을 사용하는 예제에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!