Golang语法错误:写入文件时出现意外的EOF

时间:2013-07-22 03:40:59

标签: file-io go

在最后一行代码上获取syntax error: unexpected EOF。它与文件IO有关,因为JSON代码在我添加

之前有效
b, err := json.Marshal(gfjson)
    if err != nil {
        panic(err)

    filename := ".gfjson"

    f, err := os.Create(filename)
    if err != nil {
        panic(err)
    }
    // close file on exit and check for returned error
    defer func() {
        if err := f.Close(); err != nil {
            panic(err)
        }
    }()


    if _, err := f.Write(b); err != nil {
        panic(err)
    }

    fmt.Fprintf(os.Stdout, "GFJSON file successfully created.\n")
}

1 个答案:

答案 0 :(得分:1)

恐慌之后,你在第4行错过了一个结束括号。

if err != nil {
    panic(err)
}

你的代码实际上对我编译很好,但这是因为你有一个随机的结束括号最后平衡它。我从你的缩进中假设最后的括号是函数的结尾,只有恐慌应该是if语句的一部分。