Java环境下使用CsvReader()读取CSV文件

简介: Java环境下使用CsvReader()读取CSV文件

🐓CSV文件是什么

CSV 代表逗号分隔值,是一种非常流行的文件类型。CSV文件用于存储由逗号分隔的信息。文件的每一行都用于表示一个数据记录。

🐓CSV文件的读取

🚩进行CSV文件的解析

  private List<CsvRow> getCsvFile(String filePath) {
        //新建一个CsvReadConfig配置对象
        CsvReadConfig csvReadConfig = new CsvReadConfig();
        //新建一个CsvReader对象
        CsvReader csvRows = new CsvReader(csvReadConfig);
        //初始化数据
        CsvData read = null;
            read = csvRows.read(new File(filePath), CharsetUtil.CHARSET_UTF_8);
        //读取数据
        List<CsvRow> rows = read.getRows();
        return rows;
    }


🚩Hutool包中的CsvReadConfig配置类(可以动态设置开始和结束)

import java.io.Serializable;
 
public class CsvReadConfig extends CsvConfig<CsvReadConfig> implements Serializable {
    private static final long serialVersionUID = 5396453565371560052L;
    protected long headerLineNo = -1L;
    protected boolean skipEmptyRows = true;
    protected boolean errorOnDifferentFieldCount;
    protected long beginLineNo;
    protected long endLineNo = 9223372036854775806L;
    protected boolean trimField;
 
    public CsvReadConfig() {
    }
 
    public static CsvReadConfig defaultConfig() {
        return new CsvReadConfig();
    }
 
    public CsvReadConfig setContainsHeader(boolean containsHeader) {
        return this.setHeaderLineNo(containsHeader ? this.beginLineNo : -1L);
    }
 
    public CsvReadConfig setHeaderLineNo(long headerLineNo) {
        this.headerLineNo = headerLineNo;
        return this;
    }
 
    public CsvReadConfig setSkipEmptyRows(boolean skipEmptyRows) {
        this.skipEmptyRows = skipEmptyRows;
        return this;
    }
 
    public CsvReadConfig setErrorOnDifferentFieldCount(boolean errorOnDifferentFieldCount) {
        this.errorOnDifferentFieldCount = errorOnDifferentFieldCount;
        return this;
    }
 
    public CsvReadConfig setBeginLineNo(long beginLineNo) {
        this.beginLineNo = beginLineNo;
        return this;
    }
 
    public CsvReadConfig setEndLineNo(long endLineNo) {
        this.endLineNo = endLineNo;
        return this;
    }
 
    public CsvReadConfig setTrimField(boolean trimField) {
        this.trimField = trimField;
        return this;
    }
}


相关文章
|
Python
python文件的打开、读取、关闭、写入与二进制文件的读写操作
python文件的打开、读取、关闭、写入与二进制文件的读写操作
2172 0
python文件的打开、读取、关闭、写入与二进制文件的读写操作
|
C# C++
GDAL打开中文路径和读写中文字段的问题
版权声明:欢迎评论和转载,转载请注明来源。 https://blog.csdn.net/zy332719794/article/details/40394839 GDAL不同的版本对中文的默认支持不一,有时候默认支持,有时候需要自己去设置。
1671 0
|
9月前
|
存储 编译器 Python
python文件处理-CSV文件的读取、处理、写入
python文件处理-CSV文件的读取、处理、写入
247 0
python文件处理-CSV文件的读取、处理、写入
|
1月前
|
Python
python对 ini 文件的读取
python对 ini 文件的读取
|
算法 数据处理 Python
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
在处理多个相同格式的文件时,python中的许多模块可以为我们提供很多遍历。 比如,我们想读取一个文件夹下多个相同格式的文件时 可以使用os模块,
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
|
Java 关系型数据库 MySQL
SpringBoot 导出多个Excel文件,压缩成.zip格式下载
SpringBoot 导出多个Excel文件,压缩成.zip格式下载
781 0
SpringBoot 导出多个Excel文件,压缩成.zip格式下载
python 读取 .csv/.xlsx/.xls 文件数据—批量修改文件名
python 读取 .csv/.xlsx/.xls 文件数据—批量修改文件名
|
测试技术 数据安全/隐私保护
|
编解码 数据安全/隐私保护 Python
Python操作FTP服务器实现文件和文件夹的上传与下载,python清理ftp目录下的所有文件和非空文件夹
Python操作FTP服务器实现文件和文件夹的上传与下载,python清理ftp目录下的所有文件和非空文件夹
201 0
python将目录下的所有文件夹以及文件写进excle表格中
python将目录下的所有文件夹以及文件写进excle表格中