【发布时间】:2020-08-27 11:54:55
【问题描述】:
我正在尝试使用 Winforms WebBrowser 控件来显示可以使用多种不同语言的网页。在一个示例中,我有一个包含波斯语字符的 HTML 文件(示例不限于此,但该文件可以包含蒙古语、日语或任何其他语言)。
当我在WebBrowser 控件中尝试Navigate() 到此文件时,它显示为一堆乱码(例如ÓÇÚÊ)。但是,如果我在 Firefox 中显示相同的文件,它将正确显示所有预期的字符(例如,ساعت)。我还可以在 Notepad++ 中加载原始 HTML 文件,它似乎可以自动检测正在使用的字符集/编码。
我已经阅读了许多讨论设置WebBrowser 编码的主题:
webBrowser.Document.Encoding = "UTF-8"
但是给定一组 HTML 文件,我无法知道它是用什么语言编写的,因此无法知道编码。我还可以确认 HTML 源代码中没有指定任何编码的“元”标签。
在 Firefox 和 Notepad++ 的幕后有什么魔法可以检测正确的字符集吗?如果有,怎么做?谁能告诉我如何让WebBrowser 控件以类似的方式运行?
【问题讨论】:
-
评论不用于扩展讨论;这个对话是moved to chat。