Sylvan.Data.Csv
1.3.8
Prefix Reserved
dotnet add package Sylvan.Data.Csv --version 1.3.8
NuGet\Install-Package Sylvan.Data.Csv -Version 1.3.8
<PackageReference Include="Sylvan.Data.Csv" Version="1.3.8" />
paket add Sylvan.Data.Csv --version 1.3.8
#r "nuget: Sylvan.Data.Csv, 1.3.8"
// Install Sylvan.Data.Csv as a Cake Addin
#addin nuget:?package=Sylvan.Data.Csv&version=1.3.8
// Install Sylvan.Data.Csv as a Cake Tool
#tool nuget:?package=Sylvan.Data.Csv&version=1.3.8
Sylvan.Data.Csv
A cross-platform .NET library for reading and writing CSV data files.
The CsvDataReader
provides readonly, row by row, forward-only access to the data.
Exposes a familiar API via DbDataReader
, which is ideal for accessing rectangular, tabular data sets.
Sylvan.Data.Csv is currently the fastest library for reading CSV data
in the .NET ecosystem.
Features
- Auto detect delimiters.
- Supports asynchronous IO.
- Strongly-typed accessors that avoid allocations.
- Supported types includes all standard .NET primitive types,
DateOnly
andTimeOnly
on .NET 6, - Binary data encoded with either base64 or hexadecimal.
- Supported types includes all standard .NET primitive types,
- Schema information to support database bulk-load operations.
Usage Examples
Basic
using Sylvan.Data.Csv;
// CsvDataReader derives from System.Data.DbDataReader
using CsvDataReader dr = CsvDataReader.Create("data.csv");
// iterate over the rows in the file.
while(dr.Read())
{
// iterate fields in row.
for(int i = 0; i < dr.FieldCount; i++)
{
var value = dr.GetString(i);
}
// Can use other strongly-typed accessors
// bool flag = edr.GetBoolean(0);
// DateTime date = edr.GetDateTime(1);
// decimal amt = edr.GetDecimal(2);
}
Bind CSV data to objects using Sylvan.Data.
using Sylvan.Data;
using Sylvan.Data.Csv;
using System.Linq;
using var dr = CsvDataReader.Create("data.csv");
IEnumerable<Record> records = dr.GetRecords<Record>();
Record[] allRecords = records.ToArray();
class Record {
public int Id { get; set; }
public string Name { get; set; }
public DateTime Date { get; set; }
public decimal Amount { get; set; }
}
Convert Excel data to CSV using Sylvan.Data and Sylvan.Data.Excel
using Sylvan.Data;
using Sylvan.Data.Csv;
using Sylvan.Data.Excel;
using System.Data.Common;
// create reader for excel data file
ExcelDataReader edr = ExcelDataReader.Create("example.xlsx");
// (optional) create data reader which allows variable-length rows
DbDataReader reader = edr.AsVariableField(edr => edr.RowFieldCount);
// create CSV writer to standard out
var csvWriter = CsvDataWriter.Create(Console.Out);
// write excel data as csv
csvWriter.Write(reader);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
-
.NETStandard 2.1
- No dependencies.
-
net6.0
- No dependencies.
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Sylvan.Data.Csv:
Package | Downloads |
---|---|
Purcell
一个超高性能的Excel强类型读写映射库。(支持.xls .xlsx .csv) |
|
Sylvan.AspNetCore.Mvc.Csv
Package Description |
|
Curiosity.FileDataReaderWriters.SylvanCsv
Sylvan realization for working with csv files |
GitHub repositories (4)
Showing the top 4 popular GitHub repositories that depend on Sylvan.Data.Csv:
Repository | Stars |
---|---|
LykosAI/StabilityMatrix
Multi-Platform Package Manager for Stable Diffusion
|
|
nietras/Sep
World's Fastest .NET CSV Parser. Modern, minimal, fast, zero allocation, reading and writing of separated values (`csv`, `tsv` etc.). Cross-platform, trimmable and AOT/NativeAOT compatible.
|
|
JasonBock/Rocks
A mocking library based on the Compiler APIs (Roslyn + Mocks)
|
|
MarkPflug/Sylvan.Data.Excel
The fastest .NET library for reading Excel data files.
|
Version | Downloads | Last updated | |
---|---|---|---|
1.3.8 | 7,683 | 4/23/2024 | |
1.3.7 | 53,331 | 2/10/2024 | |
1.3.6 | 1,326 | 2/6/2024 | |
1.3.6-b0001 | 69 | 2/5/2024 | |
1.3.5 | 76,474 | 11/3/2023 | |
1.3.4 | 725 | 11/2/2023 | |
1.3.3 | 96,800 | 7/17/2023 | |
1.3.2 | 40,258 | 6/6/2023 | |
1.3.2-b0001 | 130 | 5/30/2023 | |
1.3.1 | 10,353 | 5/7/2023 | |
1.3.0 | 20,518 | 4/25/2023 | |
1.2.7 | 93,161 | 2/15/2023 | |
1.2.6 | 552 | 2/13/2023 | |
1.2.6-b0003 | 272 | 2/10/2023 | |
1.2.6-b0002 | 191 | 2/8/2023 | |
1.2.6-b0001 | 118 | 2/7/2023 | |
1.2.5 | 6,928 | 1/16/2023 | |
1.2.4 | 146,753 | 10/25/2022 | |
1.2.3 | 613 | 10/21/2022 | |
1.2.2 | 31,561 | 9/12/2022 | |
1.2.1 | 577 | 9/8/2022 | |
1.2.0 | 11,075 | 8/28/2022 | |
1.1.16 | 134,389 | 6/14/2022 | |
1.1.15 | 916 | 6/2/2022 | |
1.1.14 | 603 | 6/1/2022 | |
1.1.13 | 109,994 | 3/31/2022 | |
1.1.12 | 33,803 | 2/18/2022 | |
1.1.11 | 15,539 | 1/5/2022 | |
1.1.10 | 4,109 | 12/9/2021 | |
1.1.9 | 12,503 | 10/23/2021 | |
1.1.8 | 19,457 | 9/8/2021 | |
1.1.7 | 2,579 | 8/14/2021 | |
1.1.6 | 426 | 8/13/2021 | |
1.1.5 | 490 | 8/8/2021 | |
1.1.4 | 635 | 8/5/2021 | |
1.1.3 | 2,909 | 7/23/2021 | |
1.1.2 | 481 | 7/19/2021 | |
1.1.1 | 541 | 7/15/2021 | |
1.1.0 | 518 | 7/14/2021 | |
1.0.3 | 2,053 | 5/21/2021 | |
1.0.2 | 473 | 5/15/2021 | |
1.0.1 | 1,285 | 5/4/2021 | |
1.0.0 | 612 | 4/5/2021 | |
0.10.1 | 476 | 3/27/2021 | |
0.10.0 | 734 | 3/15/2021 | |
0.9.2 | 602 | 1/31/2021 | |
0.9.1 | 481 | 1/25/2021 | |
0.9.0 | 672 | 1/9/2021 | |
0.8.3 | 433 | 1/6/2021 | |
0.8.2 | 493 | 1/4/2021 | |
0.8.1 | 441 | 1/3/2021 | |
0.8.0 | 596 | 11/30/2020 | |
0.7.4 | 506 | 9/28/2020 | |
0.7.2 | 3,919 | 9/11/2020 | |
0.7.0 | 577 | 9/10/2020 | |
0.6.3 | 572 | 8/10/2020 | |
0.6.2 | 589 | 8/7/2020 | |
0.6.1 | 530 | 8/4/2020 | |
0.6.0 | 582 | 8/3/2020 | |
0.5.0 | 589 | 6/30/2020 | |
0.4.5 | 576 | 6/25/2020 | |
0.4.4 | 572 | 6/25/2020 | |
0.4.3 | 822 | 6/10/2020 | |
0.4.2 | 697 | 5/29/2020 | |
0.4.1 | 565 | 5/2/2020 | |
0.4.0 | 598 | 4/29/2020 | |
0.3.4 | 622 | 4/21/2020 | |
0.3.3 | 596 | 4/16/2020 | |
0.3.2 | 503 | 4/15/2020 | |
0.3.1 | 542 | 4/13/2020 | |
0.3.0 | 544 | 4/10/2020 | |
0.2.1 | 663 | 4/7/2020 | |
0.2.0 | 535 | 4/7/2020 | |
0.1.2 | 570 | 4/7/2020 | |
0.1.1 | 542 | 4/6/2020 | |
0.1.0 | 2,109 | 4/4/2020 |