Go语言:将资源编译入二进制文件中(Packr v2版)
2019-04-19 本文已影响1369人
白祤星
导言:gobuffalo/packr 能将任何资源在执行
go build
后编译入二进制文件中
官方文档:https://godoc.org/github.com/gobuffalo/packr/v2
1. 安装
go get github.com/gobuffalo/packr/v2
2. 使用
a. 目录结构:
res/
┖ 1.txt
┖ 1.jpg
main.go
b. 代码实例:
package main
import "github.com/gobuffalo/packr/v2"
func main() {
// 使用一个相对路径的文件夹作为资源集合box
box := packr.New(`资源集合`, `./res`)
// 读取文件为字符串,如果该文件不存在会报错
txt, err := box.FindString(`1.txt`)
if err != nil {
panic(err)
}
// 读取文件为二进制文件(即非文本的资源文件),如果该文件不存在会报错
// jpg, err := box.Find(`1.jpg`)
// 打印出字符串数据
println(txt)
}