) func main() { xmlData := []byte(` Everyday Italian Giada De Laurentiis 200"> ) func main() { xmlData := []byte(` Everyday Italian Giada De Laurentiis 200">
117.info
人生若只如初见

Go中如何遍历XML文档

在Go中遍历XML文档通常使用标准库中的encoding/xml包。以下是一个简单的示例代码,演示如何遍历一个XML文档并打印出每个元素的名称和属性:

package main

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

func main() {
	xmlData := []byte(`
	
		
			Everyday Italian
			Giada De Laurentiis
			2005
			30.00
		
		
			Harry Potter
			J.K. Rowling
			2005
			29.99
		
	
	`)

	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来打印每个书籍的信息。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fec05AzsICQRUDFM.html

推荐文章

  • go遍历数组的方法有哪些

    for循环遍历数组: arr := []int{1, 2, 3, 4, 5}
    for i := 0; i < len(arr); i++ { fmt.Println(arr[i])
    } range关键字遍历数组: arr := []int{1, 2,...

  • Go中怎么遍历结构体切片

    在Go语言中,遍历结构体切片可以使用range关键字来实现。以下是一个例子:
    package main import "fmt" type Person struct { Name string Age int
    } f...

  • Go中如何遍历自定义集合类型

    要遍历自定义集合类型,在自定义类型上实现一个方法来实现迭代。可以使用一个结构体,结构体包含一个slice或者map来存储元素,然后实现一个方法来遍历这个结构体...

  • Go中怎么遍历字符串中的每个字符

    在Go语言中,遍历字符串中的每个字符可以通过使用range关键字来实现。示例代码如下:
    package main import "fmt" func main() { str := "Hello, 世界" // 使...

  • Hive与Kafka集成的方法是什么

    Hive与Kafka集成的方法有多种,其中一种常用的方法是通过使用Kafka Connect插件。Kafka Connect是一个工具,可以用来连接Kafka与外部系统,包括Hive。通过使用Ka...

  • python如何重新导入模块

    在Python中重新导入模块可以使用importlib模块的reload函数。例如:
    import importlib
    import example_module # 重新导入example_module
    importl...

  • python中utils模块的功能有哪些

    在Python中,通常会使用utils模块来存放一些通用的工具函数或者类,其功能可以包括但不限于: 文件操作:读取文件内容、写入文件内容、复制文件、移动文件、删除...

  • python中utils模块如何使用

    在Python中,utils模块通常是一个包含一些常用的工具函数的模块。要使用utils模块中的功能,首先需要导入该模块:
    import utils 然后就可以调用utils模块中...