java如何读取CSV
在项目开发中,我们经常需要读取csv的内容的操作。那么如何通过java读取CSV呢?下面小编为大家解答一下,希望能帮到大家!
Csv文件,逗号分隔的常用数据文件格式,默认可以用Office软件打开。
看项目中以前的处理方式是直接用用java IO类库读取Csv文件,实际处理中发现Csv文件本身包含了对各种特殊字符的处理信息。最常见的.比如:
1. 对包含特殊字符的字符串数据首尾加双引号
2. 对数据中的单个双引号前加单个双引号
其它...
所以用Java IO读到的字符串全是经过处理后的字符串,在某些场景下是不符合预期需求的。比如我需要的是不做任何处理的原始内容。
项目中另一种常见的文件格式Excel用了POI来处理,但是POI不支持Csv格式,于是找到了javacsv。
代码很简单:
Java代码
public List importCsv(String file) {
List list = new ArrayList();
CsvReader reader = null;
try {
//初始化CsvReader并指定列分隔符和字符编码
reader = new CsvReader(file, ,, Charset.forName("GBK"));
while (reader.readRecord()) {
//读取每行数据以数组形式返回
String[] str = reader.getValues();
if (str != null &