Go读取CSV文件,其内容被转换成字符串数组

package mainimport ("encoding/csv""fmt""io/ioutil""log""strings""io"
)//读取CSV前两列到map中
func CSVToMap(filePath string) map[string]string{dat, err := ioutil.ReadFile(filePath)if err != nil {log.Fatal(err)}r := csv.NewReader(strings.NewReader(string(dat[:])))record, err := r.ReadAll()  //record为二维数组if err != nil {panic("读取文件失败")}//fmt.Println(record)if r.FieldsPerRecord < 1 {panic("CSV不足两列")}mapCsv := make(map[string]string)//以csv文件第一列为KEY,第二列为value,转换为map;重复时后者覆盖前者for _, val := range record {mapCsv[val[0]] = val[1]}//fmt.Println(mapCsv)return mapCsv
}//输出CVS文件的每一行
func readCSV(filePath string){dat, err := ioutil.ReadFile(filePath)if err != nil {log.Fatal(err)}r := csv.NewReader(strings.NewReader(string(dat[:])))for {record, err := r.Read()if err == io.EOF {break}if err != nil {log.Fatal(err)}for i:= 0;i<r.FieldsPerRecord;i++ {fmt.Println(i,record[i])}}
}func main() {filePath := "/usr/local/automng/src/goapp/src/tools/cmd2.csv"readCSV(filePath)mapCsv := CSVToMap(filePath)df := mapCsv["common"]fmt.Println(df)
}

转载于:https://www.cnblogs.com/perfei/p/10641941.html

2.6 Go 读取CSV相关推荐

  1. 【OpenCV】读取csv文件

    csv简介 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本).纯文本意味着该文件是一个 ...

  2. 读取CSV文件内容,将其转换成JSON字符串输出

    CsvToJsonUtil 工具类作用:读取CSV文件内容,将其转换成JSON字符串输出 转换工具类代码如下: package com.test.util;import java.io.*; impo ...

  3. 技术图文:C# VS. Python 读取CSV文件指南

    背景 CSV 是一种以逗号进行特征分隔的文本文件类型,在数据库或电子表格中是一种非常常见的导入导出格式.本篇图文就以泰坦尼克号船员获救预测( Kaggle)中使用的数据集为例来说明 C#.Python ...

  4. python将二维列表内容写入和读取.csv文件

    python将列表按行写入至.csv文件 # coding:utf-8 import csv list=[[1,2,3,4],[5,6,7,8],[89,55,66666,5],['张三','李四', ...

  5. R语言读取CSV文件

    #读取CSV文件 data <- read.csv("drugbank.csv", header = FALSE)

  6. pandas读取csv文件的前几行数据(nrows参数)、pandas读取csv文件的中间几行数据(skiprows=range(a,b))

    pandas读取csv文件的前几行数据(nrows参数).pandas读取csv文件的中间几行数据(skiprows=range(a,b)) 目录 pandas读取csv文件的前几行数据.pandas ...

  7. pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件

    pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件 目录

  8. 读取csv数据存到list,批量写入mysql

    2019独角兽企业重金招聘Python工程师标准>>> 爬到数据后写入到csv,然后在使用executemany 批量写入到数据库 循环操作list需要耗费一定的时间,执行一万条用了 ...

  9. php如何导入大文件数据库,PHP读取CSV大文件导入数据库的示例

    文章详细介绍了csv文件在php中快速导入到mysql数据库中的例子,虽然从最简单的几百MB的到最后使用插件实现几个GB数据导入中间有一些嗑碰了,但结果还是好的. 对于数百万条数据量的CSV文件,文件 ...

  10. matlab 和python读取csv文件速度_matlab读取csv文件数据并绘图

    circle.m(画二维圆的函数) %该函数是画二维圆圈,输入圆心坐标和半径 %rectangle()函数参数'linewidth'修饰曲线的宽度 %'edgecolor','r',edgecolor ...

最新文章

  1. 关于 printk() 对 spi slave 内核驱动程序的性能影响
  2. windows导出文件名列表
  3. 二级导航 sql php,帝国cms栏目导航调用之SQL语句调用一级栏目和二级栏目的方法...
  4. wpf中xps文档合并功能实现
  5. Android的布局
  6. mysql免安装_腾讯云Ubuntu18.04部置Django2系列(二):Ubuntu18.04 安装Mysql
  7. ASP.NET基础教程-C#与JAVA的比较
  8. Android星座查询实验报告,数字基带传输实验实验报告
  9. CSS:实现闪烁效果动画
  10. 同质化代币和非同质化代币 区别对比
  11. S19王者荣耀服务器维护,王者荣耀:S19新赛季更新,她没上线惨遭重做,英雄调整,界面优化...
  12. Qt--优秀开源项目
  13. 王道考研操作系统笔记(第二章)附:王道考研408所有PPT和思维导图
  14. 【你好,windows】windows7 x64x86旗舰完整版(带驱动包usb3.0_nvme)2020.1.22
  15. Supervised Contrastive Learning:有监督对比学习
  16. SpringBoot和MybatisPlus控制台清爽的一些配置
  17. 【详细】阿里云Accesskey创建步骤记录
  18. 论war3中的随机数系统
  19. 传奇数学家拉马努金留下的数学神谕,解开了多年悬而未决的神秘难题
  20. Vue+Electron

热门文章

  1. jmap 文件解析_使用jmap dump出来的java堆镜像文件,可以用什么打开做详细分析
  2. 企业计算机管理制度论文,082208计算机信息管理制度毕业论文.doc
  3. mysql插入ㄖ_原生JavaScript代码100个实例
  4. echart 图谱_zrend echart 展示家庭图谱示例代码(类思维导图)
  5. 测试的时候数据库外键导致死锁_Oracle外键不加索引会引起死锁问题
  6. 山东工业职业学院计算机老师田彦,学院举办2019年第二期新教师岗前培训班
  7. r语言可以写c程序吗,[求助]R一般用什么写程序?
  8. java between_Java8 Period.between方法坑及注意事项
  9. python join()函数
  10. 【项目管理】《流浪地球》剧情中的项目管理相关知识