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

WBOY
Lepaskan: 2023-07-24 12:00:19
asal
947 orang telah melayarinya

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"
Salin selepas log masuk
Salin selepas log masuk

)

taip Person struct {

Name string `xml:"name"`
Age  int    `xml:"age"`
Salin selepas log masuk
Salin selepas log masuk

}

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))
Salin selepas log masuk

}}
< Alice20

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"
Salin selepas log masuk
Salin selepas log masuk

)

type Person struct {

Name string `xml:"name"`
Age  int    `xml:"age"`
Salin selepas log masuk
Salin selepas log masuk

}

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)
Salin selepas log masuk

}
:{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!

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!