Как я могу прочитать json файл в struct, а затем Marshal обратно в строку json с полями Struct как ключи (а не оригинальные json-ключи)?
(см. ниже Desired Output to Json File...)
код:
package main
import (
    "encoding/json"
    "fmt"
    "io/ioutil"
)
type Rankings struct {
    Keyword  string `json:"keyword"`
    GetCount uint32 `json:"get_count"`
    Engine   string `json:"engine"`
    Locale   string `json:"locale"`
    Mobile   bool   `json:"mobile"`
}
func main() {
    var jsonBlob = []byte(`
        {"keyword":"hipaa compliance form", "get_count":157, "engine":"google", "locale":"en-us", "mobile":false}
    `)
    rankings := Rankings{}
    err := json.Unmarshal(jsonBlob, &rankings)
    if err != nil {
        // nozzle.printError("opening config file", err.Error())
    }
    rankingsJson, _ := json.Marshal(rankings)
    err = ioutil.WriteFile("output.json", rankingsJson, 0644)
    fmt.Printf("%+v", rankings)
}
Вывод на экран:
{Keyword:hipaa compliance form GetCount:157 Engine:google Locale:en-us Mobile:false}
Выход в файл Json:
{"keyword":"hipaa compliance form","get_count":157,"engine":"google","locale":"en-us","mobile":false}
Желаемый вывод в файл Json:
{"Keyword":"hipaa compliance form","GetCount":157,"Engine":"google","Locale":"en-us","Mobile":false}
