⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Go Embed 嵌入文件

//go:embed 编译时打包静态资源到二进制 · 难度:高级 · +20XP

//go:embed — 单文件部署

Go 1.16+ 的 embed 包可以在编译时将文件或目录嵌入到二进制中。部署时只需一个可执行文件,不再需要携带配置文件、模板文件。

嵌入单个文件

import "embed"

//go:embed config.json var configData []byte // 嵌入为字节数组

//go:embed version.txt var version string // 嵌入为字符串

嵌入多个文件

//go:embed templates/*.html
var templates embed.FS   // 嵌入整个目录

func main() { data, _ := templates.ReadFile("templates/index.html") fmt.Println(string(data)) }

应用场景

注意:embed 路径是相对于源文件所在目录的,不能嵌入父目录(../)的文件。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 142 篇
0 完成
🔥 0