Автор библиотеки здесь. На входе у вас есть правильно сформированный CSV, с одним значением, состоящим из:
100926653937,Kasym Amina,620414400630,Marzhan Erbolova,"Kazakhstan, Almaty, 66, 3",87029845662
Если эта строка появилась в середине вашего ввода, я предполагаю, что ваш ввод содержит неэкранированные кавычки (где-то до того, как вы добрались до этой строки). Попробуйте поиграть с настройкой обработки неэкранированных котировок:
Например, это может работать:
settings.setUnescapedQuoteHandling(UnescapedQuoteHandling.STOP_AT_CLOSING_QUOTE);
Если ничего не работает, и все ваши строки выглядят так, как вы опубликовали, то вы можете дважды проанализировать ввод (это дерьмово и медленно, но сработает):
CsvParser parser = new CsvParser(settings);
parser.beginParsing(csvFile);
List<String[]> out = new ArrayList<>();
String[] row;
while ((row = parser.parseNext()) != null) {
//got a row with unexpected length?
if(row.length == 1){
//break it down again.
row = parser.parseLine(row[0]);
}
out.add(row);
}
Надеюсь, это поможет.