VelocityExcel 1.0.3
dotnet add package VelocityExcel --version 1.0.3
NuGet\Install-Package VelocityExcel -Version 1.0.3
<PackageReference Include="VelocityExcel" Version="1.0.3" />
<PackageVersion Include="VelocityExcel" Version="1.0.3" />
<PackageReference Include="VelocityExcel" />
paket add VelocityExcel --version 1.0.3
#r "nuget: VelocityExcel, 1.0.3"
#:package VelocityExcel@1.0.3
#addin nuget:?package=VelocityExcel&version=1.0.3
#tool nuget:?package=VelocityExcel&version=1.0.3
VelocityExcel
🚀 Ultra-High-Speed. Ultra-Low Memory. Zero Compromise.
The only Excel library that delivers ultra-high-speed read and write operations with the lowest memory consumption.
🔓 Full XLSX Compatibility
Fully compatible with the OpenXML XLSX specification. Reads files generated by Microsoft Excel and other vendor libraries.
VelocityExcel is a high-performance, ultra-fast streaming Excel (XLSX) reader and writer for .NET with minimal memory footprint. Built for processing massive files efficiently without loading them entirely into memory.
📦 Installation
dotnet add package VelocityExcel
✍️ ExcelWriter
✔ Features
- ✔ Blazing Fast or Very Very Fast
- ✔ Minimal GC Pressure
- ✔ Predictable Memory
- ✔ Excellent Compression
- ✔ Culture-Aware Formatting
- ✔ Thread-Safe Design
- ✔ Zero External Dependencies
- ✔ Massive Scale
Why Use VelocityExcel for Writing?
- Production-Proven Performance
- Streaming Architecture
- Configurable Output
- Simple Fluent API
- Enterprise-Ready
Usage Examples
Basic Excel File Creation
using VelocityExcel.Api;
using (var writer = new ExcelWriter("output.xlsx"))
{
using (var sheet = writer.CreateWorksheet("Employees"))
{
sheet.WriteRow("ID", "Name", "Department", "Salary", "Hire Date", "Is Active");
sheet.WriteRow(1, "John Doe", "Engineering", 75000.50, new DateTime(2020, 3, 15), true);
sheet.WriteRow(2, "Jane Smith", "Marketing", 82000.00, new DateTime(2019, 7, 22), true);
sheet.WriteRow(3, "Bob Johnson", "Sales", 65000.00, new DateTime(2021, 1, 10), false);
sheet.WriteRow(4, "Alice Brown", "Engineering", 91000.00, new DateTime(2018, 11, 5), true);
}
using (var sheet = writer.CreateWorksheet("Departments"))
{
sheet.WriteRow("Department", "Manager", "Budget");
sheet.WriteRow("Engineering", "Alice Brown", 500000);
sheet.WriteRow("Marketing", "Jane Smith", 350000);
sheet.WriteRow("Sales", "Bob Johnson", 400000);
}
writer.Close();
}
Configured Output with ExcelOptions
using VelocityExcel.Api;
var options = new ExcelOptions
{
CompressionPreset = "Fastest",
PrettyPrintXml = false,
UseSharedStrings = false,
};
using (var writer = new ExcelWriter("configured_output.xlsx", options))
{
using (var sheet = writer.CreateWorksheet("Products"))
{
sheet.WriteRow("Product ID", "Name", "Price", "In Stock", "Last Updated");
for (int i = 1; i <= 1000; i++)
{
sheet.WriteRow(
i,
$"Product {i}",
19.99 + (i * 0.01),
i % 3 == 0,
DateTime.Now.AddDays(-i)
);
}
}
}
✅ Ideal for:
- Large data exports
- Background services
- Web API downloads
- ETL pipelines
- Real-time structured logging
📖 ExcelReader
✔ Features
- ✔ Blazing Fast or Very Very Fast
- ✔ Compatible with Microsoft Excel and third-party/vendor XLSX files
- ✔ Forward-Only Streaming
- ✔ Precise Type Detection
- ✔ Format-Aware Parsing
- ✔ Safe XML Processing
- ✔ Shared String Deduplication
- ✔ Worksheet Navigation
- ✔ Zero External Dependencies
Why Use VelocityExcel for Reading?
- Robust Format Handling
- Culture-Aware Parsing
- Memory-Efficient Streaming
Usage Examples
Simple Excel Reader Example
using VelocityExcel.Api;
using (var reader = new ExcelReader("sample.xlsx"))
{
Console.WriteLine("Worksheets found:");
foreach (var name in reader.WorksheetNames)
Console.WriteLine($" - {name}");
using (var worksheet = reader.OpenWorksheet(0))
{
int rowCount = 0;
foreach (var row in worksheet.ReadRows())
{
rowCount++;
Console.Write($"Row {rowCount}: ");
for (int i = 0; i < Math.Min(3, row.Length); i++)
Console.Write($"[{row[i]?.ToString() ?? "NULL"}] ");
if (row.Length > 3)
Console.Write("...");
Console.WriteLine();
}
Console.WriteLine($"\nTotal rows read: {rowCount}");
}
}
Read by Worksheet Name
using VelocityExcel.Api;
using (var reader = new ExcelReader("data.xlsx"))
{
if (reader.TryOpenWorksheet("Sheet1", out var worksheet))
{
using (worksheet)
{
foreach (var row in worksheet.ReadRows())
{
if (row.Length > 0)
{
var id = row[0];
var name = row[1];
var value = row[2];
Console.WriteLine($"ID: {id}, Name: {name}, Value: {value}");
}
}
}
}
}
📄 License
VelocityExcel is proprietary software.
You are granted a royalty-free, non-exclusive license to use the software in commercial and non-commercial applications, including distribution as part of compiled applications.
Redistribution as a standalone library, NuGet package, or source distribution is not permitted.
Refer to the LICENSE file for full terms.
🙏 Show Your Support
If you find VelocityExcel useful:
- 📢 Share it
- 🛠️ Submit feedback
- 🐛 Report issues
Built with performance, safety, and simplicity in mind. 🎯
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.