[英]Read an XML file in Go
我在Go中編寫了一個小代碼,我認為它足以讀取XML文件。
有人知道什么在打apping嗎?
XML檔案:
<Lang>
<Name> Go </Name>
<Year> 2009 </Year>
<URL> http://golang.org/ </URL>
</Lang>
轉到代碼:
package main
import (
"io"
"log"
"os"
)
func main() {
input, err := os.Open("C:\GoWork\toy\lang.xml")
if err != nil {
log.Fatal(err)
}
io.Copy(os.Stdout, input)
}
.\xmltoStruct.go:11: unknown escape sequence: G
.\xmltoStruct.go:11: unknown escape sequence: l
雙引號之間的字符串文字是解釋后的字符串文字,其中反斜杠是表示轉義序列的特殊字符。 請參見規范:字符串文字 :
引號之間的文本構成文字的值,反斜杠轉義與在符文文字中的解釋相同(但\\'是非法的,而\\'是合法的),並具有相同的限制。
請雙引號加反斜杠:
input, err := os.Open("C:\\GoWork\\toy\\lang.xml")
或更簡單:使用原始字符串文字(反引號),其中反斜杠沒有特殊含義:
input, err := os.Open(`C:\GoWork\toy\lang.xml`)
另外,您還應該關閉文件,最好是使用延遲聲明:
input, err := os.Open(`C:\GoWork\toy\lang.xml`)
if err != nil {
log.Fatal(err)
}
defer input.Close()
io.Copy(os.Stdout, input)
目前,這是兩種文字形式的混合
input, err := os.Open("C:\GoWork\toy\lang.xml")
字符串文字基本上有兩種形式: 原始字符串文字b。 解釋字符串文字
要么使用帶反引號的原始字符串文字,如在foo中,並且文字的值在引號之間沒有特殊含義
或帶雙引號的解釋后的字符串文字,如“ bar”中所示,但要小心,因為該值的解釋方式與符文文字中的一樣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.