golang使用encoding/csv对csv文件进行读取和写入
package main
import (
"fmt"
"encoding/csv"
"os"
"io"
)
func main(){
f, err := os.Open("data.csv")
if err != nil{
fmt.Println("Error: ", err)
return
}
reader := csv.NewReader(f)
// 可以一次性读完
result, err := reader.ReadAll()
if err != nil{
fmt.Println("Error: ", err)
return
}
fmt.Println(result)
// 也可以一行一行进行读取
// 但是注意不要两种方式都使用
// 运行本代码第二种方式有可能没有数据,因为读指针已经指到了最后
for {
line, err := reader.Read()
if err == io.EOF{
break
} else if err != nil{
fmt.Println("Error: ", err)
return
}
fmt.Println(line)
}
}