다음 코드 :
var text = (new WebClient()).DownloadString("http://export.arxiv.org/api/query?search_query=au:Freidel_L*&start=0&max_results=20"));
text
다른 많은 것들 중에서 문자열을 포함 하는 변수 가됩니다.
"$ κ $ -Minkowski 공간, 스칼라 필드 및 Lorentz 불변의 문제"
그러나 Firefox에서 해당 URL을 방문하면
$ κ $ -Minkowski 공간, 스칼라 필드, 로렌츠 불변 문제
실제로 맞습니다. 나는 또한 시도했다
var data = (new WebClient()).DownloadData("http://export.arxiv.org/api/query?search_query=au:Freidel_L*&start=0&max_results=20");
var text = System.Text.UTF8Encoding.Default.GetString(data);
그러나 이것은 같은 문제를 주었다.
여기에 결함이 어디에 있는지 잘 모르겠습니다. 피드가 UTF8 인코딩에 대해 거짓말을하고 있고 브라우저는 그것을 알아낼만큼 똑똑하지만 그렇지 WebClient
않습니까? 피드가 올바르게 UTF8로 인코딩되었지만 WebClient
다른 방식으로 실패합니까? 이 문제를 완화하려면 어떻게해야합니까?
UTF8Encoding.Default
실제로Encoding.Default
는 OS 언어 설정에 기반한 ANSI 인코딩입니다.