#sample.yml
single: |
a single quote'
double: |
a double quote"
// main.go
package main
import (
"html/template"
"io/ioutil"
"log"
"os"
"gopkg.in/yaml.v2"
)
const Template = `{{ .Single}}
---
{{ .Double}}`
type Sample struct {
Single string `yaml:"single"`
Double string `yaml:"double"`
}
func main() {
file, err := ioutil.ReadFile("sample.yml")
if err != nil {
log.Fatal(err)
}
s := new(Sample)
err = yaml.Unmarshal(file, s)
if err != nil {
log.Fatal(err)
}
t, err := template.New("s").Parse(Template)
if err != nil {
log.Fatal(err)
}
err = t.Execute(os.Stdout, s)
if err != nil {
log.Fatal()
}
}
打印出来的是 '
这样的字符.
如果想要保留原始的 ' " , 要如何做呀?
$ go run ./main.go
a single quote'
---
a double quote"
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.