ใน Go 1.16 นั้นจะมี core library ใหม่เพิ่มเข้ามา ชื่อว่า Embedded files
โดยจะอยู่ใน package embed
และมี package ใหม่ชื่อว่า io/fs สำหรับการอ่านไฟล์แบบ read-only
ในการเข้าถึงไฟล์ง่าย ๆ ด้วยการใช้ directive go:embed
เพื่อความเข้าใจ มาดู codeกัน
การใช้งานเบื้องต้น
[gist id="87cdf1734bb070bc5a03ca96d3fa8420" file="demo.go"]ลองทำการสร้าง File server ใช้งานนิดหน่อย
โดยใช้งานผ่าน struct embed.FS ดังนี้
[gist id="87cdf1734bb070bc5a03ca96d3fa8420" file="server.go"]จากที่ใช้งานมาง่ายดีนะ
แต่ไม่ค่อยชอบการใช้ directive เลยนะสิ !!
แต่อย่างไรก็ตาม ลองใช้งานกันดูครับ