Я пишу код Java, который должен анализировать файлы csv с разными типами столбцов и значениями. Основной файл выглядит примерно так (CSV), без строки заголовка/столбца. Чтобы упростить процесс обработки файла, я хочу иметь доступ к значению индекса каждой ячейки, используя имя столбца. Я не хочу использовать парсер CSV на данный момент.Управление именами столбцов и позициями при анализе CSV с помощью Java
Column1 | Column2 | Column3 |...
--------+---------+---------+---
val10 | val20 | val30 |
val11 | val21 | val31 |
val12 | val22 | val32 |
... | ... | ... |
Я думал об использовании ArrayList имен столбцов (в порядке), так как перечисление не конвертировать обратно в целые числа, как и в C++. Таким образом, я мог бы сделать что-то вроде:
ArrayList<String> columnNames = new ArrayList<String>();
columnNames.add("Column1");
columnNames.add("Column2");
columnNames.add("Column3");
// read each line from the file ...
String[] row = line.trim().split(",");
String col2 = row[ columnNames.indexOf("Column2") ];
Я довольно новыми для Java - там лучше/умнее способ сделать это? Благодарю.
Да, используйте парсер CSV. Как и этот: http://opencsv.sourceforge.net/#javabean-integration – artbristol