中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

Go中如何遍歷XML文檔

go
小億
89
2024-04-03 10:33:05
欄目: 編程語言

在Go中遍歷XML文檔通常使用標準庫中的encoding/xml包。以下是一個簡單的示例代碼,演示如何遍歷一個XML文檔并打印出每個元素的名稱和屬性:

package main

import (
	"encoding/xml"
	"fmt"
	"os"
)

func main() {
	xmlData := []byte(`
	<bookstore>
		<book category="cooking">
			<title lang="en">Everyday Italian</title>
			<author>Giada De Laurentiis</author>
			<year>2005</year>
			<price>30.00</price>
		</book>
		<book category="children">
			<title lang="en">Harry Potter</title>
			<author>J.K. Rowling</author>
			<year>2005</year>
			<price>29.99</price>
		</book>
	</bookstore>
	`)

	type Book struct {
		Title  string `xml:"title"`
		Author string `xml:"author"`
		Year   int    `xml:"year"`
		Price  string `xml:"price"`
	}

	type Bookstore struct {
		Books []Book `xml:"book"`
	}

	var bookstore Bookstore

	err := xml.Unmarshal(xmlData, &bookstore)
	if err != nil {
		fmt.Println("Error unmarshaling XML:", err)
		return
	}

	for _, book := range bookstore.Books {
		fmt.Println("Title:", book.Title)
		fmt.Println("Author:", book.Author)
		fmt.Println("Year:", book.Year)
		fmt.Println("Price:", book.Price)
	}
}

在這個示例中,我們定義了兩個結構體BookBookstore來表示XML文檔中的數據結構。然后使用xml.Unmarshal函數將XML數據解析成對應的結構體。最后通過遍歷bookstore.Books來打印每個書籍的信息。

0
汾阳市| 宁城县| 苏尼特左旗| 荣昌县| 隆回县| 龙口市| 曲沃县| 泸州市| 民权县| 牡丹江市| 新野县| 上栗县| 曲麻莱县| 余干县| 泸水县| 莒南县| 宜黄县| 平谷区| 无极县| 左云县| 施甸县| 伊吾县| 师宗县| 长白| 乐都县| 星子县| 大城县| 鱼台县| 翼城县| 淮南市| 无为县| 麻城市| 莱州市| 井冈山市| 肃宁县| 丰台区| 镇巴县| 郎溪县| 和田市| 广饶县| 精河县|