欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

golang官方嵌入文件到可执行程序的示例详解

程序员文章站 2022-06-21 20:13:39
前言在go官方出嵌入文件的方法前我在网上找过,并且自己还研究过,虽然没有问题,但是既然官方支持还是用起来吧。看了下go源码embed/embed.go很简单,并且看embed/internal/emb...

前言

在go官方出嵌入文件的方法前我在网上找过,并且自己还研究过,虽然没有问题,但是既然官方支持还是用起来吧。
看了下go源码embed/embed.go很简单,并且看embed/internal/embedtest/embed_test.go就知道如何使用。

示例程序

嵌入文件直接访问

原理是使用go:embed标签来完成。下面是直接读取文件内容,需要注意下面几点。
文件不是utf8编码时,输出内容为中文会乱码。
测试过嵌入文件只能为源码文件同级目录和子目录下的文件,试过其他目录的绝对路径或相对路径会报错。
我测试过几个能想到的场景,有些会报错,所以在使用时需要注意。

嵌入文件列表

总结

今天看到go1.16发布,看了下特性,支持嵌入文件到可执行程序中,所以研究了一下。
我发现直接看源码的_test测试文件就知道是如何使用的,都不需要到处搜教程。
所以说学习要知其然且知其所以然,不然天天搜别人的示例代码,却不知道原理,是不能灵活使用的。

到此这篇关于golang官方嵌入文件到可执行程序的文章就介绍到这了,更多相关golang嵌入文件到可执行程序内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!