golang 导出数据到csv文件

18393910396 · · 5099 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

```go // 导出设备列表信息到csv func (ba *businessActor) ExportDeviceListInfo(deviceList []device.AllDevice, filename string) error { // 创建文件 newFile, err := os.Create(filename) if err != nil { return errors.Wrap(err, "创建文件失败") } defer func() { newFile.Close() }() // 写入UTF-8 newFile.WriteString("\xEF\xBB\xBF") // 写入UTF-8 BOM,防止中文乱码 // 写数据到csv文件 w := csv.NewWriter(newFile) header := []string{"房间号", "门锁信号", "门锁电量", "柚控名称", "柚控状态"} //标题 data := [][]string{ header, } for k, _ := range deviceList { hostIsOnline := "" if deviceList[k].BoxOnline { hostIsOnline := "在线" } else { hostIsOnline := "离线" } context := []string{ deviceList[k].RoomName, strconv.Itoa(deviceList[k].Rssi) + "%", strconv.Itoa(deviceList[k].Electric) + "%", deviceList[k].BoxName, hostIsOnline, } data = append(data, context) } // WriteAll方法使用Write方法向w写入多条记录,并在最后调用Flush方法清空缓存。 w.WriteAll(data) w.Flush() return err } ```

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

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

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