Golang 如何读取CSV文件
Golang提供了一个庞大的内置库,可用于执行文件的读写操作。要读取CSV文件,在Golang中使用以下方法:
- os.Open(): os.Open()方法打开指定的文件以进行读取。该方法返回的是os.File指针或错误。
- encoding/csv: 该包提供一个NewReader函数,用于读取CSV文件,并返回一个csv.Reader指针,进而用于将文件内容作为一系列记录进行读取。
注意: 使用离线编译器可获得更好的结果。将程序文件保存为.go扩展名。使用下面的命令来执行程序:
示例1: 假设CSV文件名为Students.csv,并且文件中的内容如下:
S001,Thomas Hardy,CS01
S002,Christina Berglund,CS05
S003,Yang Wang,CS01
S004,Aria Cruz,CS05
S005,Hanna Moos,CS01
下面是读取CSV文件的Golang程序:
输出:
图1.1
可以在csv.Reader结构中定义自定义分隔符来读取CSV文件而不是逗号(,)。
NewReader函数返回的Reader结构
type Reader struct{
// Comma是由NewReader设置为(,)的字段分隔符
// 它可以被更改为自定义分隔符
// 但它必须是一个有效的符文,并且它不应该是\r、\n或Unicode替换字符(0xFFFD)。
Comma 符文
Comment 符文
FieldsPerRecord int
LazyQuotes bool
TrimLeadingSpace bool
ReuseRecord bool
TrailingComma bool
}
例子2: 下面的例子演示了如何读取具有自定义分隔符的CSV文件。假设CSV文件名为Sample.csv,文件中的内容如下:
Word1-Word2
Word3-Word4
Word5-Word6
下面是读取具有自定义分隔符的CSV文件的Golang程序:
输出:
图1.2