JSONファイルを作成して構造体に解析することで、Goプログラムを構成しようとしています:
var settings struct {
serverMode bool
sourceDir string
targetDir string
}
func main() {
// then config file settings
configFile, err := os.Open("config.json")
if err != nil {
printError("opening config file", err.Error())
}
jsonParser := json.NewDecoder(configFile)
if err = jsonParser.Decode(&settings); err != nil {
printError("parsing config file", err.Error())
}
fmt.Printf("%v %s %s", settings.serverMode, settings.sourceDir, settings.targetDir)
return
}
config.json ファイル:
{
"serverMode": true,
"sourceDir": ".",
"targetDir": "."
}
プログラムはエラーなしでコンパイルおよび実行されますが、print ステートメントの出力は次のとおりです。
false
(false および 2 つの空の文字列)
私も試してみましjson.Unmarshal(..)
たが、同じ結果が得られました。
構造体の値を埋める方法で JSON を解析するにはどうすればよいですか?