Вместо того, чтобы открывать файл вручную, рассмотрите возможность использования некоторых встроенных функций ввода-вывода.
import (
"io/ioutil"
"encoding/json"
)
...
func Save(myobj SomeType, filename string) (err error) {
var data []byte
if data, err = json.Marshal(myobj); err != nil {
return
}
return ioutil.WriteFile(filename, data)
}
То же самое касается загрузки данных JSON, где вы используете ioutil.ReadFile
и json.Unmarshal
.