Comparison matrix
Repository
Commons CSV | Flatpack | JavaCSV | opencsv | Super CSV | jcsv | JSefa | CSVeed | |
Maven Central entry | no | yes | yes | yes | yes | yes | yes | yes |
Source in Maven | N/A | no | no | yes | yes | yes | no | yes |
Dependencies | Commons IO, H2 | JDOM, JExcelapi | none | none | none | none | XMLPull | SLF4J |
Logging support | no | no | no | no | no | no | no | SLF4J |
Version | snapshot | 3.1.1 | 2.0.0 | 2.3 | 2.2.0 | 1.4.0 | 1.0.0 | 0.4.0 ![]() |
Last updated | 30-Nov-2012 | 28-May-2008 | 20-Feb-2008 | 28-May-2013 | 24-Apr-2014 | 27-Feb-2012 | 17-Oct-2013 | 06-May-2014 |
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
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
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 |