Sylvan.Data.Csv
1.2.3
Prefix Reserved
See the version list below for details.
dotnet add package Sylvan.Data.Csv --version 1.2.3
NuGet\Install-Package Sylvan.Data.Csv -Version 1.2.3
<PackageReference Include="Sylvan.Data.Csv" Version="1.2.3" />
paket add Sylvan.Data.Csv --version 1.2.3
#r "nuget: Sylvan.Data.Csv, 1.2.3"
// Install Sylvan.Data.Csv as a Cake Addin #addin nuget:?package=Sylvan.Data.Csv&version=1.2.3 // Install Sylvan.Data.Csv as a Cake Tool #tool nuget:?package=Sylvan.Data.Csv&version=1.2.3
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 is compatible. 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. |
-
.NETCoreApp 3.0
- No dependencies.
-
.NETStandard 2.0
- No dependencies.
-
.NETStandard 2.1
- No dependencies.
-
net6.0
- No dependencies.
NuGet packages (8)
Showing the top 5 NuGet packages that depend on Sylvan.Data.Csv:
Package | Downloads |
---|---|
GreatUtilities.Infrastructure
Essencial tools to agile development. |
|
LuminaSupplemental.Excel
Supplemental data for lumina and dalamud plugins. |
|
cai.reporting
Provides helpers to generate report using FastReport |
|
Purcell
一个超高性能的Excel强类型读写映射库。(支持.xls .xlsx .csv) |
|
Sylvan.AspNetCore.Mvc.Csv
Package Description |
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.9 | 172,834 | 7/2/2024 | |
1.3.8 | 78,599 | 4/23/2024 | |
1.3.7 | 99,683 | 2/10/2024 | |
1.3.6 | 1,986 | 2/6/2024 | |
1.3.6-b0001 | 88 | 2/5/2024 | |
1.3.5 | 109,408 | 11/3/2023 | |
1.3.4 | 1,230 | 11/2/2023 | |
1.3.3 | 131,486 | 7/17/2023 | |
1.3.2 | 42,943 | 6/6/2023 | |
1.3.2-b0001 | 162 | 5/30/2023 | |
1.3.1 | 15,760 | 5/7/2023 | |
1.3.0 | 24,598 | 4/25/2023 | |
1.2.7 | 113,446 | 2/15/2023 | |
1.2.6 | 1,065 | 2/13/2023 | |
1.2.6-b0003 | 308 | 2/10/2023 | |
1.2.6-b0002 | 224 | 2/8/2023 | |
1.2.6-b0001 | 150 | 2/7/2023 | |
1.2.5 | 8,549 | 1/16/2023 | |
1.2.4 | 202,876 | 10/25/2022 | |
1.2.3 | 1,124 | 10/21/2022 | |
1.2.2 | 36,477 | 9/12/2022 | |
1.2.1 | 1,101 | 9/8/2022 | |
1.2.0 | 20,234 | 8/28/2022 | |
1.1.16 | 260,517 | 6/14/2022 | |
1.1.15 | 1,459 | 6/2/2022 | |
1.1.14 | 1,142 | 6/1/2022 | |
1.1.13 | 131,378 | 3/31/2022 | |
1.1.12 | 36,471 | 2/18/2022 | |
1.1.11 | 26,524 | 1/5/2022 | |
1.1.10 | 4,920 | 12/9/2021 | |
1.1.9 | 13,265 | 10/23/2021 | |
1.1.8 | 20,469 | 9/8/2021 | |
1.1.7 | 3,238 | 8/14/2021 | |
1.1.6 | 942 | 8/13/2021 | |
1.1.5 | 1,013 | 8/8/2021 | |
1.1.4 | 1,205 | 8/5/2021 | |
1.1.3 | 3,956 | 7/23/2021 | |
1.1.2 | 995 | 7/19/2021 | |
1.1.1 | 1,059 | 7/15/2021 | |
1.1.0 | 1,039 | 7/14/2021 | |
1.0.3 | 2,644 | 5/21/2021 | |
1.0.2 | 982 | 5/15/2021 | |
1.0.1 | 1,793 | 5/4/2021 | |
1.0.0 | 1,145 | 4/5/2021 | |
0.10.1 | 997 | 3/27/2021 | |
0.10.0 | 1,260 | 3/15/2021 | |
0.9.2 | 1,126 | 1/31/2021 | |
0.9.1 | 996 | 1/25/2021 | |
0.9.0 | 1,188 | 1/9/2021 | |
0.8.3 | 951 | 1/6/2021 | |
0.8.2 | 1,012 | 1/4/2021 | |
0.8.1 | 954 | 1/3/2021 | |
0.8.0 | 1,099 | 11/30/2020 | |
0.7.4 | 1,019 | 9/28/2020 | |
0.7.2 | 4,427 | 9/11/2020 | |
0.7.0 | 1,096 | 9/10/2020 | |
0.6.3 | 1,088 | 8/10/2020 | |
0.6.2 | 1,096 | 8/7/2020 | |
0.6.1 | 1,043 | 8/4/2020 | |
0.6.0 | 1,096 | 8/3/2020 | |
0.5.0 | 1,114 | 6/30/2020 | |
0.4.5 | 1,096 | 6/25/2020 | |
0.4.4 | 1,087 | 6/25/2020 | |
0.4.3 | 1,337 | 6/10/2020 | |
0.4.2 | 1,212 | 5/29/2020 | |
0.4.1 | 1,079 | 5/2/2020 | |
0.4.0 | 1,113 | 4/29/2020 | |
0.3.4 | 1,144 | 4/21/2020 | |
0.3.3 | 1,109 | 4/16/2020 | |
0.3.2 | 1,012 | 4/15/2020 | |
0.3.1 | 1,067 | 4/13/2020 | |
0.3.0 | 1,056 | 4/10/2020 | |
0.2.1 | 1,189 | 4/7/2020 | |
0.2.0 | 1,061 | 4/7/2020 | |
0.1.2 | 1,096 | 4/7/2020 | |
0.1.1 | 1,052 | 4/6/2020 | |
0.1.0 | 2,763 | 4/4/2020 |