GO语言embed机制的使用

 更新时间:2026年03月30日 09:45:39   作者:洞察哥  
本文详细介绍了Go语言中使用embed机制将静态文件(如图片、文本和目录)嵌入到程序中,包括文件转[]byte、string类型,以及使用FS结构组合多个文件和目录的方法,下面就来详细的介绍一下

前言

embed是Go语言提供的一种机制,可使静态文件或文件夹嵌入Go语言程序中,使我们Go语言的可执行文件包含了这些数据,这样就可以只使用一个Go语言的可执行程序就能运行了

目录结构

文件转[]byte

import (
	_ "embed"
)
//go:embed static/cat.png
var catImg []byte

文件转string

import (
	_ "embed"
)

//go:embed static/sentence.txt
var sentence []byte

多文件转embed.FS

import (
    "embed"
)

//go:embed static/image/cat.png static/image/dog.png static/sentence.txt static/dog.png
var fs embed.FS

目录转embed.FS

import (
    "embed"
)

//go:embed static/*
var fs embed.FS

文件和目录组合的方式转embed.FS

import (
    "embed"
)

//go:embed static/image/* static/sentence.txt static/words.txt
var fs embed.FS

到此这篇关于GO语言embed机制的使用的文章就介绍到这了,更多相关GO语言embed机制内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • golang hack插件开发动态链接库实例探究

    golang hack插件开发动态链接库实例探究

    这篇文章主要为大家介绍了golang hack插件开发动态链接库实例探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • go如何终止多个for select循环嵌套的方法

    go如何终止多个for select循环嵌套的方法

    当您想从嵌套循环中中断,从select内部终止循环时,标记的中断非常有用,本文主要介绍了go如何终止多个for select循环嵌套的方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • 解读golang plugin热更新尝试

    解读golang plugin热更新尝试

    这篇文章主要介绍了解读golang plugin热更新尝试,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 关于go语言编码需要放到src 文件夹下的问题

    关于go语言编码需要放到src 文件夹下的问题

    这篇文章主要介绍了go语言编码需要放到src 文件夹下的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Go语言使用sync.Mutex实现资源加锁

    Go语言使用sync.Mutex实现资源加锁

    数据共享是一把双刃剑,Go语言为我们提供了 sync.Mutex,一种最基础也是最常用的加锁方式,用于保证在任意时刻只有一个 goroutine 能访问共享资源,下面我们就来看看具体实现吧
    2025-08-08
  • Golang自旋锁的相关介绍

    Golang自旋锁的相关介绍

    自旋锁是指当一个线程在获取锁的时候,如果锁已经被其他线程获取,那么该线程将循环等待,然后不断地判断是否能够被成功获取,知直到获取到锁才会退出循环
    2022-10-10
  • go语言制作分页器实例探究

    go语言制作分页器实例探究

    这篇文章主要为大家介绍了go语言制作分页器实例探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • 深入理解Go语言实现多态 

    深入理解Go语言实现多态 

    本文主要介绍了Go语言实现多态,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Go语言标准库sync.Once使用场景及性能优化详解

    Go语言标准库sync.Once使用场景及性能优化详解

    这篇文章主要为大家介绍了Go语言标准库sync.Once使用场景及性能优化详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • 浅谈Golang是如何读取文件内容的(7种)

    浅谈Golang是如何读取文件内容的(7种)

    这篇文章主要介绍了浅谈Golang是如何读取文件内容的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05

最新评论