2.6 Go 读取CSV
Go读取CSV文件,其内容被转换成字符串数组
- package main
- import (
- "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 < {
- panic("CSV不足两列")
- }
- mapCsv := make(map[string]string)
- //以csv文件第一列为KEY,第二列为value,转换为map;重复时后者覆盖前者
- for _, val := range record {
- mapCsv[val[]] = val[]
- }
- //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:= ;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)
- }
2.6 Go 读取CSV的更多相关文章
- sparkR读取csv文件
sparkR读取csv文件 The general method for creating SparkDataFrames from data sources is read.df. This met ...
- C# 读取 CSV 文件
最近做一个C#项目要导入CSV文件中的数据到Oracle中,使用Aspose.Cells读取中文字段标题却乱码,表的最后多出几行null记录,而且不是免费的,后来找到了NPOI,顾名思义,就是POI的 ...
- PHP读取CSV数据写入数据库
/*读取csv文件*/ public function testCsv(){ $fileName = "tel.csv"; $fp=fopen($fileName,"r& ...
- VB6.0 读取CSV文件
最近做了一个Upload文件的需求,文件的格式为CSV,读取文件的方法整理了一下,如下: 1.先写了一个读取CSV文件的Function: '读取CSV文件 '假设传入的参数strFile=C:\Do ...
- php读取csv文件,在linux上出现中文读取不到的情况 解决方法
今,php读取csv文件,在linux上出现中文读取不到的情况,google,后找到解决办法<?phpsetlocale(LC_ALL, 'zh_CN');$row = 1;$handle = ...
- 内容写到 csv 格式的文件中 及 读取 csv 格式的文件内容
<?php/*把内容写到 csv 格式的文件中 基本思路是:1.用 $fp = fopen("filename", 'mode')打开一个csv文件,可以是打开时才建立的2. ...
- Unity 读取CSV与Excel
前几天看到我们在游戏中需要动态加载某些角色的游戏策划值,关于这个问题怎么解决呢?其实办法很多种,归根到底,就是数据的读取.我们可以想到的存储数据的载体有很多.例如:txt,xml,csv,excel. ...
- 使用univocity-parsers创建和读取csv文件
import com.univocity.parsers.csv.CsvFormat;import com.univocity.parsers.csv.CsvParser;import com.uni ...
- PHP读取CSV大文件导入数据库的示例
对于数百万条数据量的CSV文件,文件大小可能达到数百M,如果简单读取的话很可能出现超时或者卡死的现象. 为了成功将CSV文件里的数据导入数据库,分批处理是非常必要的. 下面这个函数是读取CSV文件中指 ...
- Python 读取csv文件到excel
朋友问我如何通过python把csv格式的文件另存为xls文件,自己想了想通过读取csv文件然后再保存到xls文件中即可,也许还有其他简单的方法,但这里也为了练习python语法及其他知识,所以采用了 ...
随机推荐
- 执行“hdfs dfs -ls”时报ConnectException
原因可能是指定的端口号不对,该端口号由hdfs-site.xml中的属性"dfs.namenode.rpc-address"指定,即为NameNode的RPC服务端口号. 文件上传 ...
- 自己(转)String、StringBuffer与StringBuilder之间区别
String.StringBuffer与StringBuilder之间区别 最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringB ...
- 设计模式12---享元模式(Flyweight Pattern)
享元模式 定义:共享元对象,运用共享技术有效地支持大量细粒度对象的复用.如果在一个系统中存在多个相同的对象,那么只需要共享一份对象的拷贝,而不必为每一次使用创建新的对象. 享元模式是为数不多的.只为提 ...
- Strict Weak Ordering
Description A Strict Weak Ordering is a Binary Predicate that compares two objects, returning true i ...
- thinkjs系统服务启动
- Postgres数据库在Linux中优化
I/O 优化1 打开 noatime nodirtime,async 方法: 修改 /etc/fstab stat 命令查看 2 调整预读方法: 查看 sudo blockdev --getra /d ...
- DATATable转为json
public static string DataTableToJson(DataTable dt) { StringBuilder jsonBuilder = new StringBuilder() ...
- .Net Core配置与自动更新
.Net Core 将之前Web.Config中的配置迁移到了appsettings.json文件中,并使用ConfigurationBuilder来读取这个配置文件.并可设置在配置文件变化以后,自动 ...
- selenium爬取网易云
from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.c ...
- SAH Benchmarks Of Natural History Museum Scene
method ...