java处理CSV文件

文章目录

  • [1. 方法](#1. 方法)
  • [2. maven依赖](#2. maven依赖)
  • [3. 示例代码](#3. 示例代码)

1. 方法

  • opencsv-->CSVParser
  • commons-csv-->CSVReader;有时候文本里有逗号可能会导致错误分割

2. maven依赖

复制代码
 <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-csv</artifactId>
        <version>1.8</version>
  </dependency>

<dependency>
	<groupId>com.opencsv</groupId>
	<artifactId>opencsv</artifactId>
	<version>3.3</version>
</dependency>

3. 示例代码

  • CSVReader 读取CSV
csharp 复制代码
		CSVReader reader = new CSVReader(new FileReader(path));
		String[] nextLine;
		while ((nextLine = reader.readNext()) != null) {
		    logger.info(nextLine[0]);
//		    logger.info(nextLine[1]);
//		   有几列可以读取几列。。。。
		}
		reader.close();
  • CSVParser 读取CSV
csharp 复制代码
try (CSVParser parser = CSVParser.parse(new File(path), Charset.forName("UTF-8"), CSVFormat.DEFAULT.withHeader())) {
		for (CSVRecord record : parser) {
			logger.info(record.get(0));
//			String col1 = record.get("1");
//		    有几列可以读取几列。。。。
		// ...
		}
} catch (IOException e) {
	e.printStackTrace();
}
相关推荐
2401_837088501 小时前
stringRedisTemplate.opsForHash().entries
java·redis
独隅1 小时前
在 Lua 中,你可以使用 `os.date()` 函数轻松地将时间戳转换为格式化的时间字符串
开发语言·lua
思麟呀2 小时前
Linux的基础IO流
linux·运维·服务器·开发语言·c++
星释2 小时前
Rust 练习册 :Pythagorean Triplet与数学算法
开发语言·算法·rust
星释2 小时前
Rust 练习册 :Nth Prime与素数算法
开发语言·算法·rust
lkbhua莱克瓦243 小时前
Java基础——集合进阶3
java·开发语言·笔记
蓝-萧3 小时前
使用Docker构建Node.js应用的详细指南
java·后端
ζั͡山 ั͡有扶苏 ั͡✾3 小时前
从零搭建 Data-Juicer:一站式大模型数据预处理与可视化平台完整教程
python·data-juicer
多喝开水少熬夜3 小时前
Trie树相关算法题java实现
java·开发语言·算法
QT 小鲜肉3 小时前
【QT/C++】Qt定时器QTimer类的实现方法详解(超详细)
开发语言·数据库·c++·笔记·qt·学习