使用Go语言读取CSV文件并打印的操作指南

 更新时间:2025年07月21日 08:23:30   作者:程序员爱钓鱼  
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文件并打印内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 从浅入深带你掌握Golang数据结构map

    从浅入深带你掌握Golang数据结构map

    在 Go 语言中,map 是一种非常常见的数据类型,它可以用于快速地检索数据。本篇文章将介绍 Go 语言中的 map,包括 map 的定义、初始化、操作和优化,需要的可以参考一下
    2023-04-04
  • Go语言colly框架的快速入门

    Go语言colly框架的快速入门

    Python 中非常知名的爬虫框架有Scrapy,Go 中也有一些 star 数较高的爬虫框架,colly就是其中的佼佼者,它 API 简洁,性能优良,开箱即用,今天就来快速学习一下吧
    2023-07-07
  • 解决golang gin框架跨域及注解的问题

    解决golang gin框架跨域及注解的问题

    这篇文章主要介绍了解决golang gin框架跨域及注解的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 详解go程序如何在windows服务中开启和关闭

    详解go程序如何在windows服务中开启和关闭

    这篇文章主要介绍了一个go程序,如何在windows服务中优雅开启和关闭,文中通过代码示例和图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-07-07
  • Go语言异常处理(Panic和recovering)用法详解

    Go语言异常处理(Panic和recovering)用法详解

    异常处理是程序健壮性的关键,往往开发人员的开发经验的多少从异常部分处理上就能得到体现。Go语言中没有Try Catch Exception机制,但是提供了panic-and-recover机制,本文就来详细讲讲他们的用法
    2022-07-07
  • Go语言中html/template模块详细功能介绍与示例代码

    Go语言中html/template模块详细功能介绍与示例代码

    这篇文章主要介绍了Go语言中html/template模块详细功能介绍与示例代码,这里说的是go 语言中自带的包html/template里的一些基本操作,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-03-03
  • 详解go 动态数组 二维动态数组

    详解go 动态数组 二维动态数组

    这篇文章主要介绍了go 动态数组 二维动态数组,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Golang的命名规范及最佳实践(推荐!)

    Golang的命名规范及最佳实践(推荐!)

    这篇文章主要给大家介绍了关于Golang的命名规范及最佳实践的相关资料,命名规则涉及变量、常量、全局函数、结构、接口、方法等的命名,文中介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • Go语言LeetCode题解682棒球比赛

    Go语言LeetCode题解682棒球比赛

    这篇文章主要为大家介绍了Go语言LeetCode题解682棒球比赛示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Go语言如何使用golang-jwt/jwt/v4进行JWT鉴权详解

    Go语言如何使用golang-jwt/jwt/v4进行JWT鉴权详解

    最近项目中需要用到鉴权机制,golang中jwt可以用,这篇文章主要给大家介绍了关于Go语言如何使用golang-jwt/jwt/v4进行JWT鉴权的相关资料,需要的朋友可以参考下
    2022-09-09

最新评论