-
2021-11-26 10:02:28
1 背景
实际工作中,很多数据都存在csv文件中,使用 java语言开发的时候,有的时候需要读取文件,或者将csv文件导入到数据库中。commons-csv作为三方类库,简化了读取操作
2 应用
2.1 引入pom
文章使用1.9.0版本
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.9.0</version> </dependency>
2.2 API应用
2.2.1 关于表头的思考
什么是表头,注明每一列数据代表的含义,这个很重要
csv文件有两种关于表头的应用,或者可以说玩法
csv文件第一行是表头
csv表头放在其它文件
2.2.2 csv文件第一行是表头
map就是一行数据 key是列名, value是具体的值,接下来你可以根据自己的业务处理了
File file = new File(csv); CSVFormat format = CSVFormat.DEFAULT.withHeader(); InputStreamReader isr = new InputStreamReader(new FileInputStream(f), "UTF-8"); CSVParser records = new CSVParser(isr, format); for (CSVRecord record : records) { Map<String, String> map = record.toMap(); }
2.2.3 csv表头放在其它文件
File file = new File(csv); InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(file),"UTF-8"); Iterable<CSVRecord> records = CSVFormat.RFC4180.withHeader("表头").parse(inputStreamReader); for (CSVRecord csvRecord : records) { Map<String, String> map = csvRecord.toMap(); }
更多相关内容 -
.csv 读取和绘图:.csv 读取和绘图-matlab开发
2021-05-29 19:34:50它读取两个 .csv 文件并绘制在一个图形上 -
CSV_read.rar_CSV_read_csv读取_保存csv_文件夹 CSV 数据 读取_读取csv文件
2022-07-15 07:59:15可以指定读取某个文件夹下的CSV数据,方便实验仪器保存的数据的读取和处理 -
java使用javacsv读取csv文件 导入Mysql数据库
2019-06-08 01:10:25NULL 博文链接:https://qq-24665727.iteye.com/blog/2339850 -
CSV读取以后乱码
2021-10-18 10:13:55利用ExcelReaderFactory.CreateReader读取csv表格以后,读取出来的中文都是乱码,所以这里就需要把他的编码格式转换一下,这里我只说我的转换流程。 首先转到CreateCsvReader的定义可以产看一下 然后可以看到他...利用ExcelReaderFactory.CreateReader读取csv表格以后,读取出来的中文都是乱码,所以这里就需要把他的编码格式转换一下,这里我只说我的转换流程。
首先转到CreateCsvReader的定义可以产看一下
然后可以看到他的
再转定义,可以看到这里的结构
如果你再看的话,就可以看到
最后,你可像我一样调用他
我这里 用的是GB2312,因为用其他的好像不行,自己可以多尝试,也有其他的编码格式,可以以自己查看,这里转换以后你的csv就不会乱码了。
-
Python的CSV读取与写入
2021-12-04 16:50:06读取CSV文件 需要在当前目录下编写一个csv_read.csv文件: name,account,password 小明,账号1,123 慢慢,账号2,123 丽丽,账号3,123 调用csv的reader()方法对csv文件读取: import csv with open('csv_read.csv','r'...CSV文件是纯文本形式存储表格数据。
读取CSV文件
需要在当前目录下编写一个
csv_read.csv
文件:name,account,password
小明,账号1,123
慢慢,账号2,123
丽丽,账号3,123调用csv的
reader()
方法对csv文件读取:import csv with open('csv_read.csv','r') as fp: reader = csv.reader(fp) titles = next(reader) #剪切reader第一行的值返回给title print (titles) print ("***************") for x in reader: print(x)
写入CSV文件
在写入csv文件时,需要创建一个
writer
对象,主要调用其中2个方法:writerow()
可写入一行,常用来写入属性。writerows
可写入多行,用来写入数据。import csv topic = {'name','account','password'} info =[ ['小明','账号1',123], ['慢慢','账号2',123], ['丽丽','账号3',123] ] with open('csv_Save文件2.csv','w',newline='') as fp: wr = csv.writer(fp) wr.writerow(topic) wr.writerows(info)
以字典方式写入CSV文件
在写入字典型的数据时,需要调用
DictWriter()
方法import csv header = ['name','age','sex'] values=[ {'name':'小明','age':19,'sex':'男'}, {'name':'小兰','age':18,'sex':'女'}, {'name':'黄忠','age':21,'sex':'男'} ] with open('writer_Dict.csv','w',newline='') as fp: wr = csv.DictWriter(fp,header) wr.writerow({'name':'名字','age':'年龄','sex':'性别'}) wr.writerows(values)
本次小结就到这了,如果对你有帮助请给我一个赞,如果觉得有讲的不到位之处可以在评论区告诉我!!!
-
Java CSV文件读取
2019-05-02 15:21:25Java读取excel,Excel是我们平时工作中比较常用的用于存储二维表数据的,JAVA也可以直接对Excel进行操作。 -
php读取csv文件并输出的方法
2020-10-24 13:48:53主要介绍了php读取csv文件并输出的方法,涉及php中fgetcsv函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下 -
pandas.read_csv读取csv不完整问题处理
2022-03-08 20:43:22多的少说,直接上图说问题,这两天在写数据处理工具时,想通过新建一个csv后用csv模块写入数据后,用pandas读取并删除某一列后保存发现一个问题,在读取时只有3919行,所以只处理了3919行,后面的数据都没删干净。...多的少说,直接上图说问题,这两天在写数据处理工具时,想通过新建一个csv后用csv模块写入数据后,用pandas读取并删除某一列后保存发现一个问题,在读取时只有3919行,所以只处理了3919行,后面的数据都没删干净。后面怎么都想不通为什么,盲猜可能是因为写入的时候没结束,然后调整了一下发现果然是这个问题导致的。
这是调整后程序出来的
有没有大佬可以解释一下具体原因?
-
pd.read_csv读取指定的行数或列数
2020-08-04 22:11:37df = pd.read_csv('0728.csv',sep=',') df 如上图所示,有时候直接读取文件,会多出一些空白列。为了去掉这些空白列,我们可以用usecols参,确定好要读取的列数,直接加参即可。 list_a = np.arange(12) df = pd.... -
python用pd.read_csv读取csv文件报错,读取中文文件报错
2021-04-14 19:07:36原因 读取的路径或者是读取的文件名字有中文 解决方法 1.将路径和文件名字都改成英文的 例如 data=pd.read_csv("linghuigui.csv") print (data) 2.第二种方法是函数里面加一个参数:engine=‘python’ 这样的话路径... -
python pandas.read_csv读取大文件
2020-08-30 21:55:00pandas.read_csv读取较大文件方法 -
pd.read_csv读取文件路径出现的问题
2021-11-12 15:28:43在用pd.read_csv读取数据集时,我有2个疑问?1是:写相对路径还是绝对路径。2是:相对路径,绝对路径怎么写。这篇文章就是解决以上两个问题。如果这个脚本只是在自己电脑上,都可以无所谓,但是如果别人也想用你的... -
python读取csv文件指定行的2种方法详解
2020-09-17 23:04:41主要介绍了python读取csv文件指定行的方法详解,需要的朋友可以参考下 -
Golang使用CSV读取、导出文件
2020-04-12 13:46:24#导出csv文件 func WriteCsv() { //创建文件 f, err := os.Create("test.csv") if err != nil { panic(err) } defer f.Close() // 写入UTF-8 BOM f.WriteString("\xEF\xBB\xBF") //创建一个新的写入文件流... -
pd.read_csv读取txt时整型变成浮点型问题解决
2021-08-12 11:29:48https://zhuanlan.zhihu.com/p/27440031 pandas中读取csv文件通常使用pd.read_csv()函数,正常情况下给出文件路径即可读取数据,不过在某些特殊情况下,需要一些小技巧才能读取正确的内容 文本型和浮点数的混淆及... -
read_csv读取csv文件碰到的问题
2020-07-20 21:34:14使用read_csv读取csv文件时,提取他的中文列名,需要用notepad将csv文件转为“utf-8”编码,然后以d = read_csv('D:\data.csv',encoding='utf-8')读取(其实该方法默认使用utf-8) 报错epandas.errors.ParserError:... -
【Pandas】read_csv读取文件函数详解
2020-02-23 12:34:41【Pandas】read_csv读取文件函数详解 首先来了解一下官方给出的该函数用法 read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, ... -
Python——CSV读取大文件报错_csv.Error: field larger than field limit
2021-03-14 23:15:55Python——CSV读取大文件报错_csv.Error: field larger than field limit 使用Python读取较大的csv文件时,可能出现大字段,导致超过字段默认限制,从而无法读取。因此,需要在使用csv读取文件前,先设置下csv... -
pandas read_csv读取数据时,数字字段值以文本方式读取
2021-01-09 21:18:51pandas 读取csv文本时,数字字段值中有以0开头的,读取后0会被丢掉,如下图文本: 以默认方式读取如下: import pandas as pd df = pd.read_csv('data.csv',encoding='utf-8') print(df) 如下图,读取后,基金代码... -
pandas.read_csv读取数据时出现省略号
2019-10-08 16:24:17用以下代码读取CSV文件时,读取的结果出现了省略号,结果截图如下所示: `import pandas as pd path2=“F:/shujuji/Euro_2012_stats_TEAM.csv” euro12=pd.read_csv(path2) print(euro12.head()) 修改代码,加一句 ... -
pandas read_csv 读取数据中包含双引号
2020-08-08 08:01:57如果数据中的某个字段有引号,引号...需要用下面的方法读取: import pandas as pd df=pd.read_csv("complext.csv",skipinitialspace=True,escapechar='\\',quotechar='"') df.to_csv("new.csv",sep="\x01") ... -
pandas中read_csv读取文件后需要关闭(close)吗?
2021-04-02 14:09:20 -
pd.read_csv读取csv文件时的问题
2019-12-04 14:17:26pd.read_csv读取mnist的csv数据集时,一直有错误,后来发现,pd.read_csv在读取的时候会默认把第一行当做表格的key,下面的才是value,(也就是默认为dataframe) csv.reader()会将每一行都当做列表读入 所以当mnist... -
R read.csv 读取中文文件
2019-03-28 10:45:00网上各种改编码fileEncoding encoding方法有时候都不好使...打开CSV文件——另存为——(非UTF-8)的CSV格式,详情见下图: 保存后使用代码: file = read.csv("XX.csv", stringsAsFactors = F, header = T, se... -
pandas 小技巧——pd.read_csv读取没有表头的csv文件、并加上指定表头
2021-04-14 16:59:32我们在读取csv文件的时候,有的时候可能没有表头,或者想换一个表头,该怎么操作? df = pd.read_csv('data.csv', sep='\t',header=None, names=['var_code','var_name','var_desc'])``` -
pandas 用read_csv读取txt文件时,部分行丢失
2019-04-25 16:11:58用pandas 的 read_csv 来读取txt文件时,出现了部分行丢失的情况。 原因是某行中有单个英文引号,导致\n换行符失效。 多行连成了一行,直到遇到下一个单个引号。 例如: .txt文件如下: 这里有一个未闭合的引号... -
python pandas.read_csv读取每行的列数不同csv文件或txt文件
2020-09-03 20:39:30解决方法:使用read_csv方法时,通过names属性设置多指定一些列名。 df = pd.read_csv(txt_or_csv_filename,header=None,index_col=False,names=['a','b','c','d','e']) -
python 用 read_csv读取数据集时删除某几列元素
2021-01-31 19:29:34首先用把所有的数据读进来并转换成列表的形式。 读进来的数据格式为列表套列表。 比如说我们不想要数据列表中每个元素的第一和第二个(以莺尾花数据为例)。我们可以这样做: def ignore_column(complete_data, ... -
pd.read_csv读取文件不存在怎么办
2020-07-28 20:42:01File ‘C:\user\admin\xxx.csv’ not existing in ‘C:\user\admin\xxx.csv’ 一个小小的读取问题也是很恼火的,陆陆续续一个小时才解决,写在这里给跟我碰到同样问题的朋友们一点指引吧,希望能帮助到你们。 检查...