CSVeed

Easy-to-use CSV to Java Bean utility

View project onGitHub

Comparison matrix

Repository

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
Maven Central entry yes yes yes yes yes yes yes yes
Source in Maven yes yes no yes yes yes yes yes
Dependencies Commons IO, H2 JDOM, JExcelapi none none none none XMLPull SLF4J
Logging support no no no no no no no SLF4J
Version 1.10.0 4.0.18 2.0 5.7.1 2.2.0 1.4.0 1.1.1.RELEASE 0.7.4
Last updated 23-May-2023 27-Dec-2021 20-Feb-2008 22-Oct-2022 29-Oct-2015 03-Feb-2012 03-Oct-2014 16-Jan-2023

Tokenizer

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
custom separator yes yes yes yes yes yes yes yes
custom quote yes yes no yes yes yes yes yes
custom escape yes no yes, cryptic yes no, same as quote no double/escape yes
custom EOL yes no yes yes no no yes yes
\n in delimited field yes yes yes yes yes yes yes yes
escaped quote in quoted field yes yes yes yes yes yes yes yes
different escape / quote yes yes N/A yes N/A N/A escape yes
deal with leading/trailing whitespace yes no yes no no no no yes

Line Reading

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
get by column index yes no yes yes yes yes no yes
get by column name yes yes yes no no no no yes
read single line (streaming) no no yes yes yes yes yes yes
read all lines yes yes, DataSet no yes no yes no yes
skip comment lines yes no yes no no yes no yes
ignore empty lines config yes config no yes, auto yes, auto yes yes

Bean Mapping

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
column index-based mapping N/A N/A N/A yes no yes no yes
column name-based mapping " " " theoretically yes no no yes
supports annotations " " " no no limited yes yes
converts to primitives " " " yes set manually yes yes yes
converts to basic Objects " " " no set manually yes set manually yes
Converter support " " " yes, overwrite no no yes yes
Date support " " " no yes very limited yes yes
Returns typed Bean " " " no yes yes no yes
Deep conversion " " " no yes, untried no yes, untried no
Split cell to multiple properties " " " no no no no no
Join multiple cells into one property " " " no no no no no

Writing CSV

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
write to Writer yes yes yes yes yes yes yes yes

Documentation

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
RFC 4180 not mentioned not mentioned not mentioned not mentioned yes yes not mentioned yes
Manual no yes no no yes yes no no
Examples no yes yes yes yes yes yes no
Ideas behind library no yes no no yes no no yes
JavaDoc no yes no yes yes yes yes no
JavaDoc package description no partially no yes yes yes no yes
Roadmap no no no no yes no no no

Quality of error feedback

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
syntax error line line, obscure eats a lot no line line nr no line, cell exact
illegal number of columns no line, obscure no no check exact no no exact
illegal column index mapping N/A N/A N/A no N/A no no line
illegal column name mapping N/A N/A N/A untried line, obscure N/A N/A exact
cell to property error N/A N/A N/A no line, only value line only value line + cell exact
bean in original context N/A N/A N/A no no no no no

Convenience

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
dry run ? yes ? ? ? ? no no
single facade no no yes no no no no yes

Open Source Community

Commons CSV Flatpack JavaCSV opencsv Super CSV jcsv JSefa CSVeed
active & large community yes no no yes yes no no no
issue management yes no no yes yes no no yes