Gunakan fungsi json.MarshalIndent dalam golang untuk menukar struktur kepada rentetan JSON yang diformatkan

PHPz
Lepaskan: 2023-11-18 13:59:52
asal
1323 orang telah melayarinya

Gunakan fungsi json.MarshalIndent dalam golang untuk menukar struktur kepada rentetan JSON yang diformatkan

Gunakan fungsi json.marshalindent di Golang untuk menukar struktur ke dalam json formatted string

Apabila menulis program di Golang, kita sering perlu menukar struktur ke dalam rentetan JSON. boleh membantu kami mencapai output berformat. Di bawah ini kami akan menerangkan secara terperinci cara menggunakan fungsi ini dan memberikan contoh kod khusus.

Mula-mula, mari buat struktur yang mengandungi beberapa data. Berikut ialah contoh kod:

package main

import (
    "encoding/json"
    "fmt"
)

type Person struct {
    Name  string `json:"name"`
    Age   int    `json:"age"`
    Email string `json:"email"`
}

func main() {
    person := Person{
        Name:  "John",
        Age:   30,
        Email: "john@example.com",
    }

    // 将Person结构体转换为JSON字符串
    jsonData, err := json.MarshalIndent(person, "", "  ")
    if err != nil {
        fmt.Println("转换为JSON字符串时发生错误:", err)
        return
    }

    // 打印格式化的JSON字符串
    fmt.Println(string(jsonData))
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menentukan struktur Orang yang mengandungi nama, umur dan e-mel. Kemudian buat objek Orang dalam fungsi utama dan tukar objek itu kepada rentetan JSON menggunakan fungsi json.MarshalIndent.

Apabila memanggil fungsi json.MarshalIndent, fungsi tersebut memerlukan tiga parameter Parameter pertama ialah objek yang hendak ditukar, parameter kedua ialah awalan pada permulaan baris dan parameter ketiga ialah selang bagi setiap tahap inden. . Dalam kod contoh, kami menetapkan parameter kedua kepada rentetan kosong dan parameter ketiga kepada dua ruang. Dengan cara ini, anda boleh mendapatkan rentetan JSON yang diinden mengikut format yang ditentukan.

Akhir sekali, kami menggunakan fungsi fmt.Println untuk mencetak rentetan JSON yang diformat.

Jalankan kod di atas dan anda akan mendapat output berikut:

{
  "name": "John",
  "age": 30,
  "email": "john@example.com"
}
Salin selepas log masuk

Seperti yang kita lihat, menukar struktur kepada rentetan JSON yang diformatkan adalah sangat mudah menggunakan fungsi json.MarshalIndent. Kami hanya perlu menentukan beberapa parameter untuk mendapatkan rentetan JSON yang diinden mengikut format yang ditentukan.

Ringkasan:
Dalam artikel ini, kami memperkenalkan cara menggunakan fungsi json.MarshalIndent dalam golang untuk menukar struktur kepada rentetan JSON yang diformatkan. Dengan memberikan parameter yang sesuai, kita boleh mendapatkan output dalam format JSON dengan mudah yang memenuhi keperluan. Sama ada ia menukar struktur kepada rentetan JSON atau menghuraikannya daripada rentetan JSON kepada struktur, pakej pengekodan/json dalam perpustakaan standard Golang menyediakan banyak fungsi berguna untuk memudahkan operasi pengekodan dan penyahkodan JSON.

Atas ialah kandungan terperinci Gunakan fungsi json.MarshalIndent dalam golang untuk menukar struktur kepada rentetan JSON yang diformatkan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!