我有以下使用xml.Encode.package mainimport ( "bytes" "encoding/xml" "fmt")type Stuff struct { Name string `xml:"name"`}func main() { w := &bytes.Buffer{} enc := xml.NewEncoder(w) enc.Indent("", " ") procInst := xml.ProcInst{ Target: "xml", Inst: []byte("version=\"1.0\" encoding=\"UTF-8\""), } if err := enc.EncodeToken(procInst); err != nil { panic(err) } if err := enc.Encode(Stuff{"My stuff"}); err != nil { panic(err) } fmt.Println(w.String())}http://play.golang.org/p/ZtZ5FGABmj它打印:<?xml version="1.0" encoding="UTF-8"?><Stuff> <name>My stuff</name></Stuff>如何<Stuff>在新行上使用開始標簽打印它:<?xml version="1.0" encoding="UTF-8"?><Stuff> <name>My stuff</name></Stuff>不幸的是,我需要在這里寫更多,以便我可以提交問題。雖然不太確定要寫什么,因為我相信我的問題已經通過上述解釋得到了充分的總結。
1 回答

子衿沉夜
TA貢獻1828條經驗 獲得超3個贊
自己寫一個帶有換行符的靜態行怎么樣?去游樂場
w := &bytes.Buffer{}
w.Write([]byte("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"))
enc := xml.NewEncoder(w)
enc.Indent("", " ")
if err := enc.Encode(Stuff{"My stuff"}); err != nil {
panic(err)
}
fmt.Println(w.String())
這一行甚至在包中定義為常量xml,所以你可以簡單地寫:Go Playground
w := &bytes.Buffer{}
w.WriteString(xml.Header)
- 1 回答
- 0 關注
- 207 瀏覽
添加回答
舉報
0/150
提交
取消