About • How To Use • Download • Contributors • Versioning • Credits • Related • License
The CsvCore library is a .NET library that provides a simple and efficient way to read, write and validate CSV files. It is designed to be easy to use, flexible, and blazing fast, making it an ideal choice for developers who need to work with CSV data in their applications.
No hassle, no fuss, no complexity but straight out of the box a working, CsvCoreReader and CsvCoreWriter.
My name is Tino Klijn, and I'm a tech lead in the .NET environment.
Since I have worked in development I encountered many libraries that support CSV handling, but none of them matched my expectations.
I strongly believe that a library should be easy to understand and to use, otherwise what is the point of creating a package for your fellow devs.
So I decided to create my own library that is simple, easy to use and flexible.
Suggestions for improvements are always welcome. Please contact me to tell me your needs in the package or simply create an issue or pull request on GitHub.
Easy, add the package to you project using the following command: dotnet add package csvcore
or by using the NuGet package manager in your IDE.
Then register one of the services or both in your IoC container.
builder.Services.AddScoped<ICsvCoreReader, CsvCoreReader>();
builder.Services.AddScoped<ICsvCoreWriter, CsvCoreWriter>();
Next read all about it in the wiki:
This library is available as a NuGet package on https://nuget.org. To install it, use the following command-line:
dotnet add package csvcore
To build this repository locally, you need the following:
- The .NET SDKs for .NET 8.0 and 9.0.
- Visual Studio, JetBrains Rider or Visual Studio Code with the C# DevKit
You can also build, run the unit tests and package the code using the following command-line:
build.ps1
Or, if you have, the Nuke tool installed:
nuke
Also try using --help
to see all the available options or --plan
to see what the scripts does.
Your contributions are always welcome! Please have a look at the contribution guidelines first.
Previous contributors include:
(Made with contrib.rocks)
This library uses Semantic Versioning to give meaning to the version numbers. For the versions available, see the tags on this repository.
This library wouldn't have been possible without the following tools, packages and companies:
- Nuke - Smart automation for DevOps teams and CI/CD pipelines by Matthias Koch
- xUnit - Community-focused unit testing tool for .NET by Brad Wilson
- Coverlet - Cross platform code coverage for .NET by Toni Solarin-Sodara
- Polysharp - Generated, source-only polyfills for C# language features by Sergio Pedri
- GitVersion - From git log to SemVer in no time
- ReportGenerator - Converts coverage reports by Daniel Palme
- StyleCopyAnalyzer - StyleCop rules for .NET
- Roslynator - A set of code analysis tools for C# by Josef Pihrt
- CSharpCodingGuidelines - Roslyn analyzers by Bart Koelman to go with the C# Coding Guidelines
- Meziantou - Another set of awesome Roslyn analyzers by Gérald Barré
- Verify - Snapshot testing by Simon Cropp
- FluentAssertions - Assert your results in a fluent way by Dennis Doomen
- Bogus - Generate random data for test purposes, a must need package for your tests.
- Dennis Doomen - For always willing to help me out.
- Jeordie Penders - For testing the library and suggesting new features.
This project is licensed under the MIT License - see the LICENSE file for details.