File tree Expand file tree Collapse file tree 4 files changed +47
-2
lines changed
internal/examples/basic/embeds Expand file tree Collapse file tree 4 files changed +47
-2
lines changed Original file line number Diff line number Diff line change 1+ golang
Original file line number Diff line number Diff line change 1+ package embeds
2+
3+ import (
4+ "embed"
5+ "fmt"
6+ "io/fs"
7+
8+ "github.com/devlights/gomy/output"
9+ )
10+
11+ //go:embed data/go*.txt
12+ var filteredContent embed.FS // 埋め込むファイルをフィルタリングしている
13+
14+ // EmbedFsFilter は、embed パッケージの機能を確認するサンプルです (埋め込むファイルをフィルタリング)
15+ func EmbedFsFilter () error {
16+ var (
17+ entries []fs.DirEntry
18+ buf []byte
19+ err error
20+ )
21+
22+ entries , err = filteredContent .ReadDir ("data" )
23+ if err != nil {
24+ return err
25+ }
26+
27+ for _ , entry := range entries {
28+ var (
29+ name = entry .Name ()
30+ path = fmt .Sprintf ("data/%s" , name )
31+ )
32+
33+ buf , err = content .ReadFile (path )
34+ if err != nil {
35+ return err
36+ }
37+
38+ output .Stdoutl (fmt .Sprintf ("[%s]" , name ), string (buf ))
39+ }
40+
41+ return nil
42+ }
Original file line number Diff line number Diff line change @@ -11,6 +11,7 @@ import (
1111//go:embed helloworld.txt
1212var content embed.FS
1313
14+ // EmbedFsMultifiles は、embed パッケージの機能を確認するサンプルです (embed.FSとして複数ファイルを操作)
1415func EmbedFsMultifiles () error {
1516 var (
1617 buf []byte
@@ -31,12 +32,12 @@ func EmbedFsMultifiles() error {
3132 //
3233 // 埋め込まれたディレクトリの操作
3334 //
34- dirs , err := content .ReadDir ("data" )
35+ entries , err := content .ReadDir ("data" )
3536 if err != nil {
3637 return err
3738 }
3839
39- for _ , entry := range dirs {
40+ for _ , entry := range entries {
4041 if entry .IsDir () {
4142 continue
4243 }
Original file line number Diff line number Diff line change @@ -19,4 +19,5 @@ func (r *register) Regist(m mappings.ExampleMapping) {
1919 m ["embed_bytes" ] = EmbedBytes
2020 m ["embed_fs_singlefile" ] = EmbedFsSingleFile
2121 m ["embed_fs_multifiles" ] = EmbedFsMultifiles
22+ m ["embed_fs_filter" ] = EmbedFsFilter
2223}
You can’t perform that action at this time.
0 commit comments