使用Go语言读取CSV文件并打印的示例代码

CSV(Comma-Separated Values)是一种常见的轻量级数据交换格式,本案例帮助你学习如何使用Go 语言读取 CSV 文件,并将内容逐行打印到终端,需要的朋友可以参考下。

案例目标

掌握如何使用 Go 语言读取 CSV 文件,并将内容逐行打印到终端。

CSV(Comma-Separated Values)是一种常见的轻量级数据交换格式,本案例帮助你学习如何使用标准库 encoding/csv 来处理 CSV 文件。

应用场景

  • 读取用户上传的数据表格
  • 分析日志、导入信息
  • 处理 Excel 导出的数据(保存为 .csv)

涉及知识点

  • 使用 os.Open() 打开文件
  • 使用 csv.NewReader() 读取文件内容
  • 使用 for 循环遍历每一行
  • 错误处理和资源释放

示例CSV文件:data.csv

姓名,身份证号,年龄
张三,123456789012345678,30
李四,234567890123456789,28
王五,345678901234567890,35

示例代码

package main
 
import (
"encoding/csv"
"fmt"
"os"
)
 
func main() {
// 打开CSV文件
file, err := os.Open("data.csv")
if err != nil {
fmt.Println("打开文件失败:", err)
return
}
defer file.Close()
 
// 创建CSV读取器
reader := csv.NewReader(file)
 
// 读取所有内容(可选择一行一行读)
records, err := reader.ReadAll()
if err != nil {
fmt.Println("读取CSV内容失败:", err)
return
}
 
// 打印CSV内容
fmt.Println("CSV文件内容如下:")
for i, row := range records {
fmt.Printf("第 %d 行: %v\n", i+1, row)
}
}

运行结果示例

CSV文件内容如下:
第 1 行: [姓名 身份证号 年龄]
第 2 行: [张三 123456789012345678 30]
第 3 行: [李四 234567890123456789 28]
第 4 行: [王五 345678901234567890 35]

技术说明

  • encoding/csv 是 Go 标准库中的 CSV 解析器,提供快速可靠的读写支持
  • reader.ReadAll() 会一次性读取全部内容,适合小文件(几千行以内)
  • 若处理大型文件,建议使用 reader.Read() 逐行读取

小结

本案例教会了你如何使用 Go 语言读取 CSV 文件并打印内容。掌握这种处理方式,将为你今后进行批量数据导入、清洗、分析打下基础。

到此这篇关于使用Go语言读取CSV文件并打印的操作指南的文章就介绍到这了,更多相关Go读取CSV文件并打印内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!