一. CSV文件简介
CSV(Comma-Separated Values,逗号分隔值,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。
CSV 是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用。
二.Java读取CSV文件 pom.xml配置
<!-- https://mvnrepository.com/artifact/com.univocity/univocity-parsers --> <dependency> <groupId>com.univocity</groupId> <artifactId>univocity-parsers</artifactId> <version>2.9.1</version> </dependency>
三.Java代码实现读取
import com.univocity.parsers.common.processor.RowListProcessor; import com.univocity.parsers.csv.CsvParser; import com.univocity.parsers.csv.CsvParserSettings; import java.io.File; import java.util.Arrays; import java.util.List; /** * @ClassName UnivocityReadCsv * @Desc 使用Univocity解析CSV文件 * @Author diandian * @Date 2022/1/4 21:53 **/ public class UnivocityReadCsv { public List<String[]> parseCSV(String fileName){ //创建一个配置选项,用来提供多种配置选项 CsvParserSettings parserSettings = new CsvParserSettings(); //打开解析器的自动检测功能,让它自动检测输入中包含的分隔符 parserSettings.setLineSeparatorDetectionEnabled(true); //创建RowListProcessor对象,用来把每个解析的行存储在列表中 RowListProcessor rowListProcessor = new RowListProcessor(); parserSettings.setProcessor(rowListProcessor); //配置解析器 //待解析的CSV文件包含标题头,把第一个解析行看作文件中每个列的标题 parserSettings.setHeaderExtractionEnabled(true); parserSettings.setLineSeparatorDetectionEnabled(true); //创建CsvParser对象,用于解析文件 CsvParser parser = new CsvParser(parserSettings); parser.parse(new File(fileName)); //如果解析中包含标题,用于获取标题 String[] headers = rowListProcessor.getHeaders(); //获取行值,并遍历打印 List<String[]> rows = rowListProcessor.getRows(); /*for(int i = 0; i < rows.size(); i++){ System.out.println(Arrays.asList(rows.get(i))); }*/ return rows; } public static void main(String[] args) { UnivocityReadCsv readCsv = new UnivocityReadCsv(); List<String[]> list = readCsv.parseCSV("doc/nba.csv"); for(int i = 0; i < list.size(); i++){ System.out.println(Arrays.asList(list.get(i))); } } }
数据读取之后,就可以做其他处理!
最后感谢诸君的支持,对你有帮助的话,请点赞支持一下!
在此,祝福大家2022年春节快乐!