Rumah >pembangunan bahagian belakang >Golang >Pengekodan dan penyahkodan XML menggunakan fungsi yang disediakan oleh pakej pengekodan/xml

Pengekodan dan penyahkodan XML menggunakan fungsi yang disediakan oleh pakej pengekodan/xml

WBOY
WBOYasal
2023-07-24 12:00:191082semak imbas

Gunakan fungsi yang disediakan oleh pakej pengekodan/xml untuk pengekodan dan penyahkodan XML

Pengenalan:
Pengekodan dan penyahkodan ialah operasi yang sangat biasa semasa memproses data XML. Dalam bahasa Go, anda boleh menggunakan fungsi yang disediakan oleh pakej pengekodan/xml untuk melaksanakan operasi pengekodan dan penyahkodan XML. Artikel ini akan memperkenalkan cara menggunakan fungsi dalam pakej pengekodan/xml untuk pengekodan dan penyahkodan XML dan memberikan contoh kod yang sepadan.

Pengekodan XML:
Pengekodan XML ialah untuk menukar struktur atau jenis data dalam bahasa Go kepada data dalam format XML. Pakej pengekodan/xml menyediakan fungsi Marshal untuk melaksanakan operasi pengekodan XML. Prototaip fungsi Marshal adalah seperti berikut:

func Marshal(v antara muka{}) ([]bait, ralat)

Fungsi Marshal mengekod nilai v dalam XML dan mengembalikan data jenis []bait yang dikodkan. Berikut ialah contoh pengekodan XML:

pakej utama

import (

"encoding/xml"
"fmt"

)

taip Person struct {

Name string `xml:"name"`
Age  int    `xml:"age"`

}

func main() {

person := Person{
    Name: "Alice",
    Age:  20,
}

xmlData, err := xml.Marshal(person)
if err != nil {
    fmt.Println("XML encoding error:", err)
    return
}

fmt.Println(string(xmlData))

}7d9f22125ddb2fdc32ee3638529148f8Aliceddcac5539b21cc1ba4ec5e22f36a95d7938f08c5842515ddcf435675294a0b1e205c1eb16865638883e6f5f7d2dc958284f6fe07d14b20a12e29608dbb1bf1d279

Dalam kod di atas, kami mentakrifkan struktur bernama Orang, yang mempunyai dua medan, iaitu Nama dan Umur. Dalam bidang struktur, teg xml:"tag" digunakan, yang digunakan untuk menentukan nama elemen dalam XML. Dalam fungsi utama, kami mencipta contoh orang jenis Orang dan mengekodnya ke dalam data format XML. Akhir sekali, data []bait yang dikodkan ditukar kepada rentetan melalui fungsi fmt.Println dan dicetak keluar.

Penyahkod XML:
Penyahkod XML ialah untuk menghuraikan data format XML ke dalam struktur atau jenis data dalam bahasa Go. Pakej pengekodan/xml menyediakan fungsi Unmarshal untuk melaksanakan operasi penyahkodan XML. Prototaip fungsi Unmarshal adalah seperti berikut:

func Unmarshal(data []bait, antara muka v{}) ralat

Fungsi Unmarshal menerima dua parameter Parameter pertama ialah data XML yang akan dinyahkodkan, dan parameter kedua ialah nilai yang didekodkan Nilai pembolehubah. Berikut ialah contoh penyahkodan XML:

package main

import (

"encoding/xml"
"fmt"

)

type Person struct {

Name string `xml:"name"`
Age  int    `xml:"age"`

}

func main() {

xmlData := []byte("<Person><name>Alice</name><age>20</age></Person>")

var person Person
err := xml.Unmarshal(xmlData, &person)
if err != nil {
    fmt.Println("XML decoding error:", err)
    return
}

fmt.Println(person)

}
:{Nautrreee
}

result: Umur:20}

Dalam kod di atas, kami mentakrifkan struktur bernama Person, yang mempunyai dua medan, iaitu Nama dan Umur. Dalam fungsi utama, kami mencipta data format XML xmlData, dan kemudian menyahkodnya menjadi orang contoh jenis Orang. Akhir sekali, pembolehubah orang yang dinyahkod dicetak melalui fungsi fmt.Println.

Kami juga boleh menggunakan fungsi lain yang disediakan oleh pakej pengekodan/xml untuk memproses data XML selanjutnya, seperti pengekodan dan tetapan pilihan penyahkodan, memproses ruang nama XML, dsb. Untuk butiran lanjut, lihat dokumentasi bahasa Go rasmi.


Ringkasan:

Artikel ini memperkenalkan cara menggunakan fungsi yang disediakan oleh pakej pengekodan/xml untuk melaksanakan operasi pengekodan dan penyahkodan XML dan menyediakan contoh kod yang sepadan. Data XML boleh diproses dengan mudah menggunakan pakej pengekodan/xml, menjadikan penggunaannya dalam bahasa Go lebih mudah dan lebih cekap. Saya harap artikel ini dapat membantu kerja pembelajaran dan pembangunan anda dalam pengekodan dan penyahkodan XML. 🎜

Atas ialah kandungan terperinci Pengekodan dan penyahkodan XML menggunakan fungsi yang disediakan oleh pakej pengekodan/xml. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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