Sylvan
Cursively
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Sylvan
-
Reading CSV 180k records - Calculate something within 60 second time while grouping
A while back I needed to process CSV with millions of records in a timescale of seconds. Sylvan Data was the best fit in terms of speed and memory efficiency. It might help you. https://github.com/MarkPflug/Sylvan
-
CSV reader recommendations...
I maintain a couple libraries that aim to provide similar functionality to MTD: Sylvan.Data and Sylvan.Data.Csv.
-
Any tips on converting a XLSX file to HTML without using a licensed library?
Here is a simple, complete gist showing how to turn a DbDataReader into an HTML table. The WriteHtmlTable extension method can be used with any ADO.NET compatible driver, which the Sylvan.Data.Excel and Sylvan.Data.Csv libraries both support.
-
Need some help/direction reading CSV into MySQL without duplication
I maintain a couple libraries that can help with reading the data files: Sylvan.Data.Csv and Sylvan.Data.Excel. I see no reason to not allow users to provide whichever format is convenient for them.
-
How would I go about parsing a CSV like file that uses "SPACE" as delimiter and other quirks.
I maintain a CSV library, Sylvan.Data.Csv, that shouldn't have any issue parsing this. You'll need to explicitly specify that space (' ') is the delimiter.
- How do I get Excel column data type with OpenXml?
-
Read uploaded excel file
Here is a some sample code of how to echo the contents of an Excel spreadsheet as CSV to the client browser using my libraries Sylvan.Data.Excel and Sylvan.Data.Csv:
-
TimeThis! - Simple timings for code blocks (Fun with IDisposable)
``` For reference, my implementation is here.
-
Microsoft .net XLSX to CSV library?
I maintain a couple libraries that should make this quite easy: Sylvan.Data.Csv, and Sylvan.Data.Excel. They are both open-source and MIT licensed. They are also both fastest-in-class at their particular tast.
-
Using C# StreamReader in System.IO, I am able to read external .csv data and visualise the hell out of it in my C# app (CLUBASID).
Personally, I'd recommend Sylvan.Data.Csv, but being the author I'm probably a bit biased. Here is some CSV performance analysis that Joel Verhagen did for .NET libraries recently.
Cursively
-
Ask HN: Examples of Top C# Code?
I was looking at the CSV parser Cursively recently, and I think it is a good simple example of a high performance C# parser and API design.
https://github.com/airbreather/Cursively
-
The Fastest Csv Parser In Net
Agreed, and agreed. #21 and #22 seek to address this, but these have actually been very low priority for me: as your benchmarks show, if you primarily need a bunch of objects that must be UTF-16 strings, then are other libraries out there that will do the job just fine. The main reason to use Cursively for that would be if you have some use cases where you need the unusual qualities that Cursively offers, but other use cases where you can live with something more traditional, and you don't want to have two different CSV processing libraries.
The usage instructions are in the README on https://github.com/airbreather/Cursively. The most straightforward way to get started (for now) is:
What are some alternatives?
Sylvan.Data.Excel - The fastest .NET library for reading Excel data files.
CsvExport - Very simple CSV-export tool for C#
PdfSharpCore - Port of the PdfSharp library to .NET Core - largely removed GDI+ (only missing GetFontData - which can be replaced with freetype2)
Cinchoo ETL - ETL framework for .NET (Parser / Writer for CSV, Flat, Xml, JSON, Key-Value, Parquet, Yaml, Avro formatted files)
AlterNats - An alternative high performance NATS client for .NET.
CsvHelper - Library to help reading and writing CSV files
H.Pipes - A simple, easy to use, strongly-typed, async wrapper around .NET named pipes.
NPOI - a .NET library that can read/write Office formats without Microsoft Office installed. No COM+, no interop.
oqtane.framework - CMS & Application Framework for Blazor & .NET MAUI
RecordParser - Zero Allocation Writer/Reader Parser for .NET Core
CsvBenchmarks - Benchmarks for various .NET libraries.