go语言文件写入内容问题

EddieChan1993 · · 1273 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

### ``app.json``文件原始内容 ``` [ { "model": "开发模式", "version": "1.0", "date_now": "2018-08-24 18:22:46", "branch": "master", "commit_id": "178d92c", "is_used": false, "is_status": true } ] ``` ### 目标是:更新app.json文件中的``is_used``字段,然后覆盖原始内容 ``` switchStart(av) data, err := json.MarshalIndent(av, "", " ") if err != nil { log.Fatalln(err) } jsonWrite(file, data) ``` #### ``switchStart(av)``后 ##### av变量是结构体,输出如下: ``[{开发模式 1.0 2018-08-24 18:22:46 master 178d92c true true}]`` ##### data输出如下: ``` [ { "model": "开发模式", "version": "1.0", "date_now": "2018-08-24 18:22:46", "branch": "master", "commit_id": "178d92c", "is_used": true, "is_status": true } ] ``` #### 所用函数 ``` //写入json文件 func jsonWrite(fp *os.File, data []byte) { _, err := fp.Write(data) if err != nil { log.Fatal(err) } } //修改运行版本状态 func switchStart(appV []AppVersion) { count := len(appV) for i := 0; i < count; i++ { if appV[i].IsStatus == true { appV[i].IsUsed = true } else { appV[i].IsUsed = false } } } ``` ### ``app.json``文件却是这样,多了一个**]**符号: ``` [ { "model": "开发模式", "version": "1.0", "date_now": "2018-08-24 18:22:46", "branch": "master", "commit_id": "178d92c", "is_used": true, "is_status": true } ]] ``` ### 我很纳闷,希望大家帮我看下,问题所在!谢谢大家

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1273 次点击  
加入收藏 微博
4 回复  |  直到 2018-08-27 09:46:43
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传