вместо добавления вы можете создать массив размером
package main
import (
"fmt"
"io/ioutil"
)
func main() {
files, _ := ioutil.ReadDir(".")
elements := make([]map[string]interface{}, len(files))
for i, file := range files {
e := map[string]interface{}{
"name": file.Name(),
"directory": file.IsDir(),
"size": file.Size(),
}
elements[i] = e
}
for i, e := range elements {
fmt.Println(i, e)
}
}