C#WebBrowser导航到文件路径失败(文件存在)

时间:2012-01-03 09:06:08

标签: c# navigation browser

我在C#中有一个Web浏览器,我想导航到我本地电脑上的路径(html文件)。 我试过用这个:

if (File.Exists(Path + b.HTML))
                {
                    browserCom1.Navigate(Path + b.HTML);
                }

文件存在,但浏览器一直在打开Internet Explorer的错误:“找不到文件:///(我的路径在这里)”

这很奇怪,因为文件是正确的。例如,如果我使用:

System.Windows.Forms.OpenFileDialog browseFile = new   
System.Windows.Forms.OpenFileDialog();
  browseFile.ShowDialog();
  String path = browseFile.FileName;
  browserCom1.Navigate(path);

我选择了之前尝试导航过的同一个文件,它可以正常工作。

如果我将上面的brwseFile文件名打印到Console(顺便说一句,这与我的Path + b.HTML相同),并将其复制粘贴到Navigate(...)函数中(更改每个'\'到'//')它不起作用。

我不知道该怎么做。 我尝试了其他类似的东西:

String path=(File.Open(Path + b.HTML, FileMode.Open).Name);
browserCom1.Navigate(path);

但应用程序不断冻结。

我也尝试了new URI(path)和所有。

如何在计算机上导航到HTML文件?

2 个答案:

答案 0 :(得分:0)

你有http斜杠,但应该有文件系统斜杠,比如c:\ something \ something.html

答案 1 :(得分:0)

我遇到了同样的问题。我在代码中清除了双\\时解决了。 如果这不是你的问题 - 你的问题可能是与从字符串解析到uri相关的其他问题。 我的路径是这样的:c:\ users \ someone1 \\ myFolder \ protocol.htm