一个简单的WebKitBrowser1.Navigate(localfilehere)由于某种原因不起作用。
我尝试将“file://”添加到网址,但这也不起作用。
这看起来很荒谬,但这个功能真的不存在吗?
答案 0 :(得分:5)
它看起来像你错误的网址。您可以通过
进行检查Uri.IsWellFormedUriString
其中一个原因 - 你把字符串放在国家符号上。
在这种情况下,之前的答案不能解决您的问题,因为您还应编码网址。
您可以使用System.Web.HttpUtility.UrlEncode
,然后应用所描述的解决方案
在X Enterprises之前(但你不应该替换空格 - 它已经通过编码完成了。)
但获取正确网址的最简单方法是
string url = new Uri(pathToFile, UriKind.Absolute).AbsoluteUri;
答案 1 :(得分:3)
“file://”是正确的协议。要获得一个文件说...“c:\ temp \ test.html”你可以尝试类似的东西:
“文件://c/temp/test.html”
请注意驱动器号后的正斜杠和冒号的缺失。
答案 2 :(得分:2)
WebKit.Net 0.5 Navigate()
函数将字符串作为其参数(本地/ Web文件)。对于例如c:\xxx\yyy zzz.htm
的本地文件,可以按如下方式传递给导航函数: -
dim sFile As String = "c:\xxx\yyy zzz.htm"
Dim url as new Uri(sFile, UriKind.Absolute)
'Now pass the file's required formatted absolute path
WebKitBrowser1.Navigate(url.AbsoluteUri)
答案 3 :(得分:1)
我找到了解决问题的方法:
1。)确保路径以“file:///”开头
2.)确保使用文件的完整路径
3.)确保所有反斜杠都改为正斜杠
4.)确保用“%20”替换所有空格“”
5.)确保文件以“.html”结尾
所以,这里有一个文件:
“C:\ Program Files \ test.html”
需要成为:
“文件:/// C:/Program%20Files/test.html”
希望这有帮助。
答案 4 :(得分:1)
创建示例HTML页面。 上传到我的资源。
使用此代码: WebKitBrowser1.document.write(my.resources.page.html)
答案 5 :(得分:1)
假设index.html在bin / debug文件夹中,那么
使用“file:///”+ Environment.CurrentDirectory.Replace(@“\”,@“/”)+“/ index.html”
假设index.html位于bin / debug并创建了文件夹,如www
使用“file:///”+ Environment.CurrentDirectory.Replace(@“\”,@“/”)+“/ www / index.html”
答案 6 :(得分:0)
在Google Chrome中,您可以通过输入file:///然后输入文件的complet路径来打开本地文件,因此您可能需要在Webkit上使用相同的运算符。