亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將數組轉換為 csv

將數組轉換為 csv

Go
慕尼黑5688855 2022-01-17 18:43:02
我有一個不同值的數組 - 有沒有辦法將其轉換為 csv 字符串并通過fmt.Printstdout 輸出,而不將 csv 寫入某個文件?據我所知,如果我創建一個 csv 寫入器,我必須將 io 文件作為參數傳遞,有沒有辦法只輸出它?
查看完整描述

2 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

是:

對于字符串切片:


package main


import "encoding/csv"

import "os"


func main() {

    wr := csv.NewWriter(os.Stdout)

    wr.Write([]string{"test1", "test2", "test3"})

    wr.Flush()

}

對于 int (或任何切片):


package main


import (

    "encoding/csv"

    "fmt"

    "os"

    "strings"

)


func main() {

    A := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} // []string{"test1", "test2", "test3"}

    st := strings.Fields(strings.Trim(fmt.Sprint(A), "[]"))

    wr := csv.NewWriter(os.Stdout)

    wr.Write(st)

    wr.Flush() // 0,1,2,3,4,5,6,7,8,9

}

其他方式:


package main


import (

    //"encoding/csv"

    "fmt"

    "strings"

)


func main() {

    A := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

    st := strings.Trim(strings.Join(strings.Fields(fmt.Sprint(A)), ", "), "[]")

    fmt.Println(st) // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

}

如果您的數據不是 int 將其轉換為字符串切片,則使用 strings.Join 函數。


查看完整回答
反對 回復 2022-01-17
?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

使用os.Stdout作為您的io.Writer


查看完整回答
反對 回復 2022-01-17
  • 2 回答
  • 0 關注
  • 244 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號