对我来说最简单的方法是用 java 或 go 来做。
在 Java 中:
readLine
您可以使用 a逐行读取文件new BufferedReader(new FileReader(file))
- 你可以在阅读过程中
HashMap
填写一个HashMap<String,String>
- 创建一个
new BufferedWriter(new FileWriter(outputfilepath))
- 使用gson,然后你只需要使用
这个 :
Gson gson = new Gson();
gson.toJson(myList, myFileOutputStreamWriter);
在围棋中:
您不需要导入外部包,Go 包含所需的包。
这将是这样的(其他一些错误测试会很好):
package main
import (
"bufio"
"fmt"
"io"
"encoding/json"
"log"
"strings"
"os"
)
func main() {
myBigThing := make(map[string]map[string]string)
f, _ := os.Open("/home/dys/dev/go/src/tests/test.go")
r := bufio.NewReader(f)
var currentPage map[string]string
pageNum := 0
for {
line, err := r.ReadString('\n')
if err != nil {
if err != io.EOF {
log.Println("Error in parsing :", err)
}
break
}
if currentPage==nil {
currentPage = make(map[string]string)
myBigThing[fmt.Sprintf("page%d",pageNum)] = currentPage
pageNum++
} else if line=="" {
currentPage = nil
} else {
tokens := strings.Split(line, ":")
if len(tokens)==2 {
currentPage[tokens[0]] = tokens[1]
}
}
}
f, err := os.Create("/home/dys/test.json")
if err != nil {
log.Println("Error :", err)
return
}
defer f.Close()
bout, _ := json.Marshal(myBigThing)
f.Write(bout)
}