Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以使用Go和webview使用本地HTML文件?_Html_Go_Webview - Fatal编程技术网

是否可以使用Go和webview使用本地HTML文件?

是否可以使用Go和webview使用本地HTML文件?,html,go,webview,Html,Go,Webview,我想使用Go和一个内置的GUI构建一个应用程序。webview似乎是一个可行的解决方案 我现在拥有的是这样一个(而且它是有效的!): 然而,我不能让它工作。还是有可能吗?更新:使用文件:// 使用文件的完整路径 w.导航(“file:////Users/myuser/tempgo/hi.html") 或者将文件读入内存 使用ioutil.ReadFile从HTML文件读入数据。然后可以将其转换为字符串 文件,Util:=ioutil.ReadFile(“hi.html”) stringFile

我想使用Go和一个内置的GUI构建一个应用程序。webview似乎是一个可行的解决方案

我现在拥有的是这样一个(而且它是有效的!):

然而,我不能让它工作。还是有可能吗?

更新:使用
文件://
使用文件的完整路径

w.导航(“file:////Users/myuser/tempgo/hi.html")
或者将文件读入内存 使用
ioutil.ReadFile
从HTML文件读入数据。然后可以将其转换为字符串

文件,Util:=ioutil.ReadFile(“hi.html”)
stringFile:=字符串(文件)
w、 导航(`data:text/html,`+stringFile)
完整的工作示例 问题的原始代码

主程序包
进口(
“github.com/webview/webview”
“io/ioutil”
)
变量计数int=0
func main(){
w:=webview.New(真)
推迟w.销毁()
w、 设置大小(600200,webview.HintNone)
w、 绑定(“btn”,func()int{
计数++
返回计数
})
文件,Util:=ioutil.ReadFile(“hi.html”)
stringFile:=字符串(文件)
//使用数据URI创建UI
w、 导航(`data:text/html,`+stringFile)
w、 运行()
}
目录结构:

main.go
hi.html
更新:使用
文件://
使用文件的完整路径

w.导航(“file:////Users/myuser/tempgo/hi.html")
或者将文件读入内存 使用
ioutil.ReadFile
从HTML文件读入数据。然后可以将其转换为字符串

文件,Util:=ioutil.ReadFile(“hi.html”)
stringFile:=字符串(文件)
w、 导航(`data:text/html,`+stringFile)
完整的工作示例 问题的原始代码

主程序包
进口(
“github.com/webview/webview”
“io/ioutil”
)
变量计数int=0
func main(){
w:=webview.New(真)
推迟w.销毁()
w、 设置大小(600200,webview.HintNone)
w、 绑定(“btn”,func()int{
计数++
返回计数
})
文件,Util:=ioutil.ReadFile(“hi.html”)
stringFile:=字符串(文件)
//使用数据URI创建UI
w、 导航(`data:text/html,`+stringFile)
w、 运行()
}
目录结构:

main.go
hi.html

如果您尝试使用,会发生什么情况?如果文件URI不起作用,您可以始终使用
操作系统打开文件。打开
,将其内容读入字节片,将其转换为字符串,在字符串前面加上
数据:text/html,
,然后将所有操作的结果传递给导航。“我无法使其工作”-尝试时会发生什么?你试了什么?包括您的代码,以及您观察到的错误消息或其他意外行为。感谢您的建议。文件URI似乎不起作用(我尝试了几个选项。正向斜杠、反向斜杠绝对路径、相对路径、绝对路径。但没有使其起作用。但是提供的第二个解决方案正在起作用。但我松开了绑定。我猜它无法按我希望的方式工作;@PetitBateau似乎人们已经在使用它了。也许你做错了什么。如果你尝试一个新的方法会发生什么?如果文件URI不起作用,你总是可以用
操作系统打开文件。打开
,将其内容读入字节片,将其转换成字符串,在字符串前面加上
数据:text/html,
,然后将所有结果传递给导航。“我无法让它工作”--你试一试会怎么样?你试了什么?包括您的代码,以及您观察到的错误消息或其他意外行为。感谢您的建议。文件URI似乎不起作用(我尝试了几个选项。正向斜杠、反向斜杠绝对路径、相对路径、绝对路径。但没有使其起作用。但是提供的第二个解决方案正在起作用。但我松开了绑定。我猜它无法按我希望的方式工作;@PetitBateau似乎人们已经在使用它了。也许你做错了什么。是的,这很有效!非常感谢!你知道为什么下面的方法会起作用吗?w、 导航(“)看起来URL是受支持的
//导航将webview导航到给定的URL。URL可能是数据URI,即//“数据:文本/文本,…”。通常可以不对其进行URL编码//正确,webview将为您重新编码。导航(URL字符串)
如果您查看包的源代码。至于原因,我不确定,因为整个包只是一些C代码的包装。如果您通过go处理程序/服务器“服务”静态页面,您可以使用
w.Navigate(“localhost/yourPage.html”)
是的,我确实读过。但我仍然想知道为什么它不接受以.html结尾的本地URL字符串作为测试。我还尝试用html文件托管一个本地Web服务器,并使用该URL。但同样的结果是,刚才看到你在Windows上,看起来其他人也有这个问题:是的,这很有效!非常感谢!你知道吗为什么下面的操作会起作用?w.Navigate(“)看起来支持URL
//Navigate将webview导航到给定的URL。URL可以是数据URI,即/“数据:文本/文本,…”。通常可以不正确地对其进行url编码//webview将为您重新编码。导航(url字符串)
如果查看包的源代码。至于为什么,我不确定,因为整个包只是一些C东西的包装。如果您通过go处理程序/服务器“服务”静态页面,您可以使用
w.Navigate(“localhost/yourPage.html”)
是的,我确实读过。但是,我仍然想知道为什么它不接受以.html结尾的本地URL字符串作为测试我还尝试托管一个带有html文件的本地Web服务器,并使用该URL。但与刚才看到的Windows上的结果相同,看起来其他人也有此问题:
main.go
hi.html