2017-02-13 12 views
0

Я использую openCSV для разбора CSV файл (разделитель «;» & цитата символ "" «), при разборе неправильный формат любит ниже строки:
столбец1; "столбец2"; колонка "" 3
результатом является массив значений: а [0] = столбец1, а [1] = столбец2, а [2] = колонка "3
OpenCSV не соответствует стандарту CSV (RFC 4180)

Но я думаю, что это wr Онг результат, так как вход (в строке: колонка «» 3) нарушает правило 5 RFC 4180 (https://tools.ietf.org/html/rfc4180):
Каждое поле может или не может быть заключен в двойные кавычки (однако некоторые программы, такие как Microsoft Excel, вообще не используйте двойные кавычки). Если поля не заключены в двойные кавычки, тогда двойные кавычки могут не отображаться внутри полей.

Кто-нибудь знает, как обнаружить это нарушение в openCSV?

ответ

1

OpenCSV просто анализирует файл/строки, которые не проверяют. Исходя из параметров, если он может анализировать строки, он не вызывает ошибок. Он делает основное предположение, что строка действительна.

Вы используете версию openssv версии 3.9 с помощью RFC4180Parser? Это должно дать вам другой ответ :)

+0

Уважаемый @Scott, да, я использовал версию 3.9, я попробую с помощью RFC4180Parser. Большое спасибо :) – nguyenbkcse