ShowQuestion.Url = new Uri(URL);
我如何做才能使Webbrowser 设定为 编码固定以 (UTF-8)显示
8 个解决方案
#1
你那个结果并不是完整的网页,只是一些片断,网页本身是可以指定编码的,请参照下面的格式:
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
</head>
<body>
地球上每小时都( )有人出生.<br />A.一定<br />B.可能<br />C.不可能<br /><!--E2-->
</body>
</html>
#2
webBrowser1.Document.Encoding = "UTF-8"
#3
这个没作用;
-----------------------------------
就是这样的网页,有几千个,我也知道不完整,试图用替换软件在文件头和尾部补,但是一旦用软件补完整,文件就是乱码!
-------------------------------
其实,在鼠标点右键,选【UTF-8】,就可以显示正常,但是没法固定下来
如果在网页固定了,那网页就不会正常,毕竟大部分是国语标准的
#4
补完是乱码的说明补的编码不对,先检查文件的保存编码是什么吧。
#5
变换一种思路,由于C#调用 webBrowser 用的是IE的核心,可不可以用C#强制设置IE显示编码为【UTF-8】
等待C#退出时还原设置
等待C#退出时还原设置
#6
#7
下面的代码可以了,2楼的代码之后要刷新,给 webBrowser1 设 DocumentCompleted 事件
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (webBrowser1.Document != null
&& webBrowser1.Document.Encoding == "gb2312"
&& webBrowser1.Document.Url.AbsoluteUri.StartsWith("http://219.139.106.6:8888/"))
{
webBrowser1.Document.Encoding = "UTF-8";
webBrowser1.Refresh();
}
}
#8
谢谢,省了我很大功夫!
#1
你那个结果并不是完整的网页,只是一些片断,网页本身是可以指定编码的,请参照下面的格式:
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
</head>
<body>
地球上每小时都( )有人出生.<br />A.一定<br />B.可能<br />C.不可能<br /><!--E2-->
</body>
</html>
#2
webBrowser1.Document.Encoding = "UTF-8"
#3
这个没作用;
-----------------------------------
就是这样的网页,有几千个,我也知道不完整,试图用替换软件在文件头和尾部补,但是一旦用软件补完整,文件就是乱码!
-------------------------------
其实,在鼠标点右键,选【UTF-8】,就可以显示正常,但是没法固定下来
如果在网页固定了,那网页就不会正常,毕竟大部分是国语标准的
#4
补完是乱码的说明补的编码不对,先检查文件的保存编码是什么吧。
#5
变换一种思路,由于C#调用 webBrowser 用的是IE的核心,可不可以用C#强制设置IE显示编码为【UTF-8】
等待C#退出时还原设置
等待C#退出时还原设置
#6
#7
下面的代码可以了,2楼的代码之后要刷新,给 webBrowser1 设 DocumentCompleted 事件
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (webBrowser1.Document != null
&& webBrowser1.Document.Encoding == "gb2312"
&& webBrowser1.Document.Url.AbsoluteUri.StartsWith("http://219.139.106.6:8888/"))
{
webBrowser1.Document.Encoding = "UTF-8";
webBrowser1.Refresh();
}
}
#8
谢谢,省了我很大功夫!