1. 产品
  2.   电子表格
  3.   .NET
  4.   ExcelDataReader
 
  

用于读取 Excel 电子表格的开源 .NET 库  

ExcelDataReader 允许您使用 C# 读取 Microsoft Excel 文件格式。

ExcelDataReader 是一个用 C# 编写的用于读取 Microsoft Excel 文件的开源轻量级 API。使用 API,您可以轻松读取 Microsoft XLS、XLSX 和 CSV。 API 支持旧版本的 XLS 文件回到 Excel 2.0,支持文本日期、缓存的公式值和 XLSX 中的空工作表路径。

此外,API 支持 XLS 中的回退编码和数据集中更灵活的列名处理。它易于配置,可在 NuGet 上使用。

Previous Next

ExcelDataReader 入门

安装 ExcelDataReader 的推荐方法是从 NuGet,请使用以下命令更快地安装。

从 NuGet 安装 ExcelDataReader

 Install-Package ExcelDataReader -Version 3.6.0

通过 .NET API 读取 Excel 文件

ExcelDataReader 允许 C# .NET 开发人员轻松高效地读取 Microsoft Excel 文件。 AsDataSet() 扩展方法是快速获取数据的便捷助手。 IExcelDataReader 扩展了 System.Data.IDataReader 和 IDataRecord 接口以在较低级别导航和检索数据。

通过C#。ET阅读Excel文件的页眉

sing System;
using System.Text;
namespace ExcelDataReader.Core.BinaryFormat
{
    /// 
    /// Represents a string value of a header or footer.
    /// 
    internal sealed class XlsBiffHeaderFooterString : XlsBiffRecord
    {
        private readonly IXlsString _xlsString;
        internal XlsBiffHeaderFooterString(byte[] bytes, uint offset, int biffVersion)
            : base(bytes, offset)
        {
            if (biffVersion < 8)
                _xlsString = new XlsShortByteString(bytes, offset + 4);
            else if (biffVersion == 8)
                _xlsString = new XlsUnicodeString(bytes, offset + 4);
            else
                throw new ArgumentException("Unexpected BIFF version " + biffVersion, nameof(biffVersion));
        }
        /// 
        /// Gets the string value.
        /// 
        public string GetValue(Encoding encoding)
        {
            return _xlsString.GetValue(encoding);
        }
    }
}

通过。ET保护库克手册

开源 .NET API ExcelDataReader 还允许您读取受密码保护的 Microsoft Excel 文档。您可以使用 ExcelReaderConfiguration 配置中的密码设置读取受密码保护的文件,并使用 CreateOpenXmlReader() 方法打开它。

如何通过C# API在电脑表格细胞中应用

// Use the following code to Access your protected Spreadsheet file 
var conf = new ExcelReaderConfiguration { Password = "yourPassword" };
excelReader = ExcelReaderFactory.CreateOpenXmlReader(excelStream, conf);

C#在Excel表面表格细胞中的应用

开放源代码ExcelDataReader库允许软件程序员只用几行C#代码对其优秀的细胞进行格式化。 请注意ExcelDataReader不直接支持格式特性。 您需要检索包含格式字符串的单元格数、并使用ExcelNumberFormat库格式化。 以下例子将有助于你了解如何实现。

如何通过C# API在电脑表格细胞中应用

string GetFormattedValue(IExcelDataReader reader, int columnIndex, CultureInfo culture)
{
    var value = reader.GetValue(columnIndex);
    var formatString = reader.GetNumberFormatString(columnIndex);
    if (formatString != null)
    {
        var format = new NumberFormat(formatString);
        return format.Format(value, culture);
    }
    return Convert.ToString(value, culture);
}
 中国人