0
XML을 언 마샬하려는 중입니다. 여기서 XML을 특수한 방식으로 구문 분석하려고합니다. UnmarshalerAttr interface을 사용해 보았지만 제대로 작동하지 않습니다. 다음 코드를 사용하면 'Castle'만 출력됩니다.Golang : 인코딩/xml의 UnmarshalXMLAttr
package main
import (
"encoding/xml"
"fmt"
"strings"
)
type Show struct {
Title string `xml:"Title,attr"`
}
func (s *Show) UnmarshalXMLAttr(attr xml.Attr) error {
fmt.Printf("Parsing attribute '%s', with value '%s'", attr.Name.Local, attr.Value)
s.Title = strings.ToUpper(attr.Value)
return nil
}
func main() {
b := []byte(`<Series Title="Castle"></Series>`)
var show Show
xml.Unmarshal(b, &show)
fmt.Println(show)
}
아이디어가 있습니까?
고마워. 나는 그것이 작동하는 방식에 감명을주지 않았지만 질문으로 대답했다. – RckMrkr