docs/index.html
Compiles classes on the fly for extremely fast performance.
Conservative when writing, liberal when reading.
Reading and writing is as simple as GetRecords<T>() and WriteRecords(records). No configuration required.
Feature rich mapping and attribute systems to configure any type of CSV file to any type of class.
Adheres to the RFC 4180 standard to ensure compatibility across systems.
Mode for common Linux/SerDe files where an escape character is used instead of RFC 4180's field quoting.
When non-standard files are read, fallback will match MS Excel parsing.
Reading records will yield results so only one record is in memory at a time.
Option to use field caching when there is repeated data in a CSV file. This will reduce memory and speed up parsing time.
CsvHelper is built on .NET Standard 2.0 which allows it to run almost everywhere. Older versions of .NET are possible if needed.
Many contributors have helped make CsvHelper the great library it is today. Completely free for commercial use. Dual licensed under MS-PL and Apache 2.
Stack Overflow has millions of users in its community just waiting to answer your questions. There is only one of me and I'm pretty busy.
Learn how to use CsvHelper using the API reference or check out some examples.
If you have a feature request or have found a bug, you can log an issue. Please use Stack Overflow if you have a question.
Completely free for commercial use. Dual licensed. Choose which ever license suits your needs.
Microsoft Public License (MS-PL)
Want to contribute? Great! Here are a few guidelines.
You can do one time or recurring donations through GitHub Sponsors.
A huge thanks to the .NET on AWS Open Source Software Fund for sponsoring CsvHelper!
Thanks to Microsoft for being a sponsor!