CSV parsing and encoding library
cassava
is a library for parsing and encoding RFC 4180 compliant comma-separated values (CSV) data, which is a textual line-oriented format commonly used for exchanging tabular data.
cassava
's API includes support for:
Index-based record-conversion
Name-based record-conversion
Typeclass directed conversion of fields and records
Built-in field-conversion instances for standard types
Customizable record-conversion instance derivation via GHC generics
Low-level bytestring builders (see Data.Csv.Builder)
Incremental decoding and encoding API (see Data.Csv.Incremental)
Streaming API for constant-space decoding (see Data.Csv.Streaming)
Moreover, this library is designed to be easy to use; for instance, here's a very simple example of encoding CSV data:
>>> Data.Csv.encode [("John",27),("Jane",28)] "John,27 Jane,28 "
System | Target | Derivation | Build status |
---|---|---|---|
x86_64-linux | /gnu/store/3v16ls2c1zhzh6gblzci4vbbf09d4yis-ghc-cassava-0.5.3.0.drv | ||
i686-linux | /gnu/store/ya979yx9i7nafc2c76p4hjr9q0yffixd-ghc-cassava-0.5.3.0.drv |
Linter | Message | Location |
---|---|---|
formatting Look for formatting issues in the source | trailing white space on line 1489 | |
formatting Look for formatting issues in the source | trailing white space on line 1490 |