-1
我读了GO OS文档这里https://golang.org/pkg/os/转到OS文件读取文档样本不工作 - 声明
的文档给这个代码
file, err := os.Open("file.go") // For read access.
if err != nil {
log.Fatal(err)
}
,然后这个
data := make([]byte, 100)
count, err := file.Read(data)
if err != nil {
log.Fatal(err)
}
然而当我在这个例子中使用它时,我得到了非函数体外的声明。
在这个例子中应该如何使用文档代码?
package main
import (
"encoding/xml"
"fmt"
"log"
"os"
)
type doc struct {
Meeting meeting `xml:"meeting"`
}
type meeting struct {
Race race `xml:"race"`
}
type race struct {
ID int `xml:"id,attr"`
Name string `xml:"name,attr"`
Distance int `xml:"distance,attr"`
Noms []nomination `xml:"nomination"`
}
type nomination struct {
Number int `xml:"number,attr"`
ID int `xml:"id,attr"`
Horse string `xml:"horse,attr"`
Weight int `xml:"weight,attr"`
Rating int `xml:"rating,attr"`
}
func main() {
d := doc{}
err := xml.Unmarshal(file, &d)
if err != nil {
log.Fatalf("Unable to unmarshal XML: %s\n", err)
}
fmt.Printf("%#v\n", d)
}
file, err := os.Open("file.go") // For read access.
if err != nil {
log.Fatal(err)
}
data := make([]byte, 100)
count, err := file.Read(data)
if err != nil {
log.Fatal(err)
}
所以我应该把它放在主或创建一个基于文档代码的文件阅读功能? – sayth