我正在尝试修复我的 golang 代码中的这些错误,如果有人可以帮助我,我将不胜感激。
这是我的代码:http : //play.golang.org/p/yELWfIdWz5
虽然,最让我烦恼的是第 21 行的第一个,其中错误说:语法错误:在 else 之前出现意外的分号或换行符。我根本找不到第 21 行或之前的分号或新行。
另外,第 28 行和第 32 行的错误是什么意思(函数体外的非声明语句)——这些语句在 main() 函数中,最后一个右大括号关闭了该函数,所以为什么那里有错误。
我有一种感觉,所有这些错误都是由于第一个错误造成的。
我非常感谢在解决这些问题或至少了解更多信息方面的任何帮助。
这是代码:
package main
import "fmt"
func main() {
var current_mid = ""
current_topic := make(map[string][]string)
f, err := os.Open(*inputFile)
if err != nil {
fmt.Println(err)
return
}
r := bufio.NewReader(f)
xmlFile, _ := os.Create("freebase.xml")
line, err := r.ReadString('\n')
for err == nil{
subject, predicate, object := parseTriple(line)
if subject == current_mid{
current_topic[predicate] = append(current_topic[predicate], object)
}
else if len(current_mid) > 0{
processTopic(current_mid, current_topic, xmlFile)
current_topic = make(map[string][]string)
}
current_mid = subject
line, err = r.ReadString('\n')
}
processTopic(current_mid, current_topic, xmlFile)
if err != io.EOF {
fmt.Println(err)
return
}
}
相关分类