我有一个struct
,我想将其转换为CSV字符串。我不必编写CSV文件。我只需要创建CSV字符串。
Go CSV软件包(https://golang.org/pkg/encoding/csv/)仅提供书写工具。
这是struct
:
type myData struct {
A string `json:"a"`
B string `json:"b"`
C string `json:"c"`
}
CSV:
1,2,3
4, ,6
我想要一个CSV字符串,以便可以通过无服务器环境将字符串作为文件直接上传到云存储中。因此,我想避免在无服务器环境中创建文件。
是否有任何软件包可以帮助您做到这一点?
最佳答案
您可以使用bytes.Buffer
写入CSV数据,并获取如下所示的字符串(live):
package main
import (
"bytes"
"encoding/csv"
"fmt"
"log"
)
func main() {
pairs := [][]string{
{"k1", "v1"},
{"k2", "v2"},
}
b := new(bytes.Buffer)
w := csv.NewWriter(b)
w.WriteAll(pairs)
if err := w.Error(); err != nil {
log.Fatal(err)
}
s := b.String()
fmt.Println(s)
}
关于csv - 在不创建CSV文件的情况下以字符串形式构造为CSV数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61054296/