![]() |
VOOZH | about |
dotnet add package MeshWeaver.DataSetReader.Excel.BinaryFormat --version 2.5.0
NuGet\Install-Package MeshWeaver.DataSetReader.Excel.BinaryFormat -Version 2.5.0
<PackageReference Include="MeshWeaver.DataSetReader.Excel.BinaryFormat" Version="2.5.0" />
<PackageVersion Include="MeshWeaver.DataSetReader.Excel.BinaryFormat" Version="2.5.0" />Directory.Packages.props
<PackageReference Include="MeshWeaver.DataSetReader.Excel.BinaryFormat" />Project file
paket add MeshWeaver.DataSetReader.Excel.BinaryFormat --version 2.5.0
#r "nuget: MeshWeaver.DataSetReader.Excel.BinaryFormat, 2.5.0"
#:package MeshWeaver.DataSetReader.Excel.BinaryFormat@2.5.0
#addin nuget:?package=MeshWeaver.DataSetReader.Excel.BinaryFormat&version=2.5.0Install as a Cake Addin
#tool nuget:?package=MeshWeaver.DataSetReader.Excel.BinaryFormat&version=2.5.0Install as a Cake Tool
MeshWeaver.DataSetReader.Excel.BinaryFormat is a specialized implementation for reading legacy Excel (.xls) files in the BIFF (Binary Interchange File Format) format. It provides comprehensive support for reading Excel 97-2003 workbooks with their complex binary structure.
The library provides:
Main reader implementation providing:
Specialized handlers for various BIFF records:
public async Task<IDataSet> ReadXlsFile(Stream stream)
{
var reader = new ExcelBinaryReader();
reader.Initialize(stream);
var dataSet = new DataSet();
while (reader.Read())
{
// Process rows
for (int i = 0; i < reader.FieldCount; i++)
{
var value = reader.GetValue(i);
// Handle cell value
}
}
return dataSet;
}
var reader = new ExcelBinaryReader(new ReadOption
{
IsFirstRowAsColumnNames = true,
ConvertOADates = true
});
public DataSet ReadAllSheets(Stream stream)
{
using var reader = new ExcelBinaryReader();
reader.Initialize(stream);
var dataSet = new DataSet();
do
{
var table = new DataTable(reader.Name);
// Read sheet data into table
dataSet.Tables.Add(table);
} while (reader.NextResult());
return dataSet;
}
private void HandleSharedStrings(XlsBiffSST sst)
{
// SST (Shared String Table) processing
foreach (var str in sst.StringList)
{
// Process shared string
}
}
private object ConvertCellValue(XlsBiffRecord cell, ushort format)
{
// Handle various Excel formats
switch (format)
{
case FormatType.Date:
return TryConvertOADateTime(cell.Value);
case FormatType.Number:
return ConvertNumber(cell.Value);
// ... other formats
}
}
Memory Management
Format Handling
Error Handling
Performance
public class BinaryFormatReader : ExcelDataSetReaderBase
{
protected override IExcelDataReader GetExcelDataReader(Stream stream)
{
var reader = new ExcelBinaryReader();
reader.Initialize(stream);
return reader;
}
}
services.AddMessageHub(hub => hub
.ConfigureServices(services => services
.AddSingleton<IExcelReaderFactory>(provider =>
new ExcelReaderFactory())
.AddTransient<IDataSetReader, BinaryFormatReader>()
)
);
The library provides detailed error information for:
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on MeshWeaver.DataSetReader.Excel.BinaryFormat:
| Package | Downloads |
|---|---|
|
MeshWeaver.DataSetReader.Excel
Package Description |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-preview1 | 123 | 4/16/2026 |
| 2.5.0 | 255 | 11/3/2025 |
| 2.4.0 | 224 | 10/2/2025 |
| 2.3.0 | 267 | 8/4/2025 |
| 2.2.0 | 555 | 7/21/2025 |
| 2.1.0 | 222 | 4/6/2025 |
| 2.0.3 | 572 | 3/24/2025 |
| 2.0.2 | 525 | 3/24/2025 |
| 2.0.1 | 194 | 3/21/2025 |
| 2.0.0 | 223 | 3/20/2025 |
| 2.0.0-preview3 | 152 | 2/28/2025 |
| 2.0.0-Preview2 | 174 | 2/10/2025 |
| 2.0.0-preview1 | 162 | 1/6/2025 |
| 1.0.1 | 210 | 10/8/2024 |
| 1.0.0 | 195 | 10/8/2024 |