我有一个巨大的CSV文件,我已经读过每一行,并使用每行的哈希值与数据库表进行比较,现在我想再次根据csv文件中的id值提取某些行。我最初无法保存行,因为我有大约20列并且> 500k行。那么列值是否存在查找函数?
id price year comments
1 23.5 2014 XYZ
2 25 2016 XYZ
3 22.5 2014 XYZ
答案 0 :(得分:0)
private void getCsvColumnData(String colName) {
int counter = 0;
String[] col = csvData.get(0);
for (String c1 : col) {
if (c1.equalsIgnoreCase(colName)) {
break;
}
counter++;
}
System.out.println("size:- " + counter);
for (int i = 1; i < csvData.size(); i++) {
String[] label = csvData.get(i);
for (int j = 0; j < label.length; j++) {
if (j == counter) {
System.out.println(label[j]);
}
}
}
}
答案 1 :(得分:-1)
使用CsvToBeanFilter。在opencsv api中,您可以使用一个很好的示例来创建自己的过滤器。