duanfen9090 2013-07-22 03:40 采纳率: 100%
浏览 1282
已采纳

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

Getting a syntax error: unexpected EOF on the last line of code which is a bracket. It has something to do with File IO because the JSON code worked before I added that in

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.
")
}
  • 写回答

1条回答 默认 最新

  • doufu6423 2013-07-22 03:54
    关注

    You are missing a closing bracket on line 4 after the panic.

    if err != nil {
        panic(err)
    }
    

    Your code actually compiles fine for me, but this is because you have a random closing brace at the end balancing it out. I assume from you indentations that the close brace at the end is then end of your function and only the panic should be part of the if statement.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?