gpt4 book ai didi

Go:用template.ParseFiles解析xml文件后,第一个 "<"变成 "<"

转载 作者:IT王子 更新时间:2023-10-29 02:24:39 26 4
gpt4 key购买 nike

我正在尝试使用 template.ParseFiles() 解析 xml 文件.

xml 是:

<?xml version="1.0" encoding="utf-8"?>
<in2>
<unique>{{.}}</unique>
<moe>100%</moe>
</in2>

但是解析之后,第一个<变成了&lt; ,像这样:

&lt;?xml version="1.0" encoding="utf-8"?>
<in2>
<unique>something</unique>
<moe>100%</moe>
</in2>

如何正确解析xml文件?

这是我的代码:

func in2(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "text/xml")
t, err := template.ParseFiles("xml/in2.xml")
if err != nil {
fmt.Println(err)
return
}
unique := "something"
err = t.Execute(w, unique)
if err != nil {
fmt.Println(err)
}
}

最佳答案

我不认为 html/template 理解 xml,所以 xml 模板会给它带来问题。如果您需要使用 xml,那么 http://golang.org/pkg/encoding/xml/包可能有用。

或者您可以使用不关心您的 xml 的文本/模板。使用 text/template 的缺点是它不会感知上下文,但 html/template 也不会理解您的 xml 的上下文。

关于Go:用template.ParseFiles解析xml文件后,第一个 "<"变成 "&lt;",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17774958/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com