goexcel导出

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

goexcel导出gin中⽂件流导出excel
func GoodsExport(c *gin.Context) {
var list []GoodsExports
dbMysql := mysql.GetORM()
sql := `select goods_id,user_id,goods_name from tb_goods`
dbMysql.SQL(sql).Find(&list)
//导出
var file *xlsx.File
var sheet *xlsx.Sheet
var row *xlsx.Row
var err error
file = xlsx.NewFile()
sheet, err = file.AddSheet("Sheet1")
if err != nil {
fmt.Printf(err.Error())
}
row = sheet.AddRow()
row.AddCell().Value = "商品ID"
row.AddCell().Value = "⽤户"
row.AddCell().Value = "商品标题"
for _, v := range list {
row = sheet.AddRow()
row.AddCell().Value = strconv.Itoa(v.GoodsId)
row.AddCell().Value = erId
row.AddCell().Value = v.GoodsName
}
buf := new(bytes.Buffer)
err = file.Write(buf)
if err != nil {
fmt.Printf(err.Error())
return
}
c.Header("Content-Description", "File Transfer")
c.Header("Content-Disposition", "attachment; filename=商品.xlsx")
c.Data(http.StatusOK, "text/xlsx", buf.Bytes())
}
View Code
导出csv
1 func makeCsv(fileName string, data [][]string) string {
2 fileName += ".csv"
3 filePath := "./static/" + fileName
4 fp, err := os.Create(filePath) // 创建⽂件句柄
5 err_handle.CheckErr(err)
6
7 defer fp.Close()
8 fp.WriteString("\xEF\xBB\xBF") // 写⼊UTF-8 BOM
9 w := csv.NewWriter(fp) //创建⼀个新的写⼊⽂件流
10 w.WriteAll(data)
11 w.Flush()
12return fileName
13 }
View Code。

相关文档
最新文档