WPF WebBrowser의 NavigateToString 메서드를 사용하여 UTF8 HTML (히브리어 텍스트가 포함 된)을 표시하면 완벽하게 표시됩니다.WPF WebBrowser NavigateToString 대 NavigateToStream (히브리어/비 utf8 인코딩)
그러나 NavigateToString을 사용하여 히브리어 텍스트가 포함 된 HTML을 utf8이 아닌 인코딩 (CodePage 1255)으로 표시하려고하면 히브리어가 엉망입니다.
Visual Studio의 디버거에서 cp1255 문자열을 확인했는데 멋지게 보였으며 웹 브라우저의 내용 소스를 저장하고 외부 브라우저로 열면 멋져 보였습니다.
NavigateToString 메서드 대신 NavigateToStream 메서드를 사용하면 훌륭하게 작동합니다.
NavigateToString의 문제점은 무엇입니까? 내가 뭔가 잘못하고 있는거야?
귀하의 의견은 원래의 포스터가 잘못된 것을 의미합니다. 그러나 대신 그들이해야 할 일은 무엇이라고 생각합니까? "올바른 인코딩을 갖고 있는지 확인하십시오"라고 말하면서 인코딩을 지정할 방법이 없습니다 - .NET의 문자열 유형은 정의상 UTF-16 코드 단위의 시퀀스입니다. 그것은 당신이 원한다고해도 변경할 수없는 것입니다. 따라서 문자열 (예 :'NavigateToString')을 사용하는 모든 API는 정의에 따라 UTF-16 코드 단위의 시퀀스를 요구합니다. IE가 종종 BOMless UTF-8을 cp1255로 오인하기 때문에'NavigateToString'이 BOM을 통과하지 못한다는 사실은 버그처럼 보입니다. –