在Webkit.NET中打开本地文件

在Webkit.NET中打开本地文件,.net,vb.net,webkit,webkit.net,.net,Vb.net,Webkit,Webkit.net,由于某些原因,一个简单的WebKitBrowser1.Navigate(localfilehere)无法工作 我尝试将“file://”添加到URL,但也没有成功 这似乎很可笑,但这项功能真的不存在吗?在Google Chrome中,您可以通过输入file:///然后输入文件的完整路径来打开本地文件,因此您可能需要在Webkit上使用相同的操作符。“file://”是正确的协议。要获取文件,请输入。。。“c:\temp\test.html”您可以尝试以下操作: "file://c/temp/te

由于某些原因,一个简单的WebKitBrowser1.Navigate(localfilehere)无法工作

我尝试将“file://”添加到URL,但也没有成功


这似乎很可笑,但这项功能真的不存在吗?

在Google Chrome中,您可以通过输入file:///然后输入文件的完整路径来打开本地文件,因此您可能需要在Webkit上使用相同的操作符。

“file://”是正确的协议。要获取文件,请输入。。。“c:\temp\test.html”您可以尝试以下操作:

"file://c/temp/test.html"


请注意正斜杠和驱动器号后没有冒号。

我找到了解决您问题的方法:

1.)确保路径以“文件://”开头
2.)确保使用文件的完整路径
3.)确保所有反斜杠都改为正斜杠
4.)确保将所有空格“”替换为“%20”
5.)确保文件以“.html”结尾

因此,这里有一个文件:
“C:\Program Files\test.html”
需要变成:
"file:///C:/Program%20Files/test.html"

希望这有帮助。

创建一个示例HTML页面。 上传到我的资源

使用此代码:
WebKitBrowser1.document.write(my.resources.page.html)

看起来你放错了url。你可以通过电话查一下

Uri.IsWellFormedUriString
其中一个原因是,你把字符串与国家符号

在这种情况下,前面的答案并不能解决您的问题,因为您还应该对url进行编码

您可以对其使用
System.Web.HttpUtility.UrlEncode
,然后应用所述的解决方案 before by(但您不应该替换空格-这已经通过编码完成了)

但获得正确url的最简单方法是

string url = new Uri(pathToFile, UriKind.Absolute).AbsoluteUri;

假设index.html位于bin/debug文件夹中,则

使用“file://“+Environment.CurrentDirectory.Replace(@“\”,@”/“+”/index.html”


假设index.html位于bin/debug中,并创建了类似www的文件夹


使用“file://“+Environment.CurrentDirectory.Replace(@“\”,@“/”+“/www/index.html”

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)

您是否也将文件名中的所有反斜杠更改为正斜杠?file:///C:/Folder/SubFolder/Test.htmlI 我有同样的问题,我正在改变斜杠。我可以使用webkitBrowser。导航以显示一些html文件,但我无法加载此html引用的javascript。因此,我不能将jquery包括在内。