【发布时间】:2019-02-25 13:23:32
【问题描述】:
我想不断地将 json 对象写入文件。为了能够阅读它,我需要将它们包装成一个数组。我不想阅读整个文件,以进行简单的附加。所以我现在在做什么:
comma := []byte(", ")
file, err := os.OpenFile(erp.TransactionsPath, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0666)
if err != nil {
return err
}
transaction, err := json.Marshal(t)
if err != nil {
return err
}
transaction = append(transaction, comma...)
file.Write(transaction)
但是通过这个实现,我需要在阅读之前手动(或通过一些脚本)添加[]scopes。如何在每次写作关闭范围之前添加一个对象?
【问题讨论】:
-
“我需要在阅读之前手动添加
[]范围” - 为什么?你不能分别解析每一行并一个一个地填充你的数组吗? -
@SergioTulentsev 我的意思是能够简单地将
Unmarshal它放入一些 go 结构中 -
它是一个数组,虽然(而不是结构)?
-
@SergioTulentsev 结构切片)
-
啊,那为什么不逐行解组并填满你的切片呢?
标签: json file go file-writing