go 格式化json

package main

import (
    "bytes"
    "encoding/json"
    "fmt"
)

func main() {
    // 原始 JSON 字符串
    var jsonStr = []byte(`{"Name":"Gopher","Title":"Programmer","Contact":{"Email":"gopher@golang.com","Phone":"1234567890","Address":"123 Main St."},"Skills":["Go","Java","C"]}`)
    // 定义结构体
    type Person struct {
        Name    string
        Title   string
        Contact struct {
            Email   string
            Phone   string
            Address string
        }
        Skills []string
    }
    // 将 JSON 数据解析为结构体
    //var person Person
    //if err := json.Unmarshal(jsonStr, &person); err != nil {
    //    panic(err)
    //}
    // 格式化 JSON 数据并输出
    var output bytes.Buffer
    if err := json.Indent(&output, jsonStr, "", "\t"); err != nil {
        panic(err)
    }
    fmt.Println(output.String())
}

 

posted on 2023-10-20 09:17  running-fly  阅读(178)  评论(0编辑  收藏  举报

导航