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
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 |