Существует ли какая-либо библиотека Java с открытым исходным кодом, которая поддерживает многосимвольные (т. е. строки длиной > 1) разделители (разделители) для CSV?
По определению, CSV = данные, разделенные запятыми, с одним символом (',') в качестве разделителя. Однако существует множество других односимвольных альтернатив (например, вкладка), в результате чего CSV обозначает данные «Значения, разделенные символами» (по сути, DSV: данные, разделенные разделителями).
Основные библиотеки Java с открытым исходным кодом для CSV (например, OpenCSV) поддерживают практически любой символ в качестве разделителя, но не строку ( многосимвольные) разделители. Итак, для данных, разделенных строками типа "|||" нет другого варианта, кроме предварительной обработки ввода, чтобы преобразовать строку в односимвольный разделитель. С этого момента данные можно анализировать как значения, разделенные одним символом.
Поэтому было бы неплохо, если бы существовала библиотека, изначально поддерживающая разделители строк, чтобы не было необходимости в предварительной обработке. Это будет означать, что CSV теперь означает данные «CharSequence-Separated Values». :-)
007,"My name is Bond, James Bond"
, либо экранировав007,My name is Bond\, James Bond
, тогда это становится намного сложнее (большинство в первом случае). Однако Asker не уточняет, нужно ли это. - person SJuan76   schedule 28.12.2011