43 lines
1.4 KiB
C#
43 lines
1.4 KiB
C#
using ExcelDataReader;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using System;
|
|
using System.IO;
|
|
using YLErp.Office;
|
|
|
|
namespace YLErp.ExtLibTests
|
|
{
|
|
[TestClass]
|
|
public class ExcelDataReaderTest
|
|
{
|
|
[TestMethod("测试EXCEL文件读取(ExcelDataReader)")]
|
|
public void TestExcelDataReader()
|
|
{
|
|
var path = Path.Combine(AppContext.BaseDirectory, "Resources\\场外期权交易导入.xlsx");
|
|
using (var stream = new FileStream(path, FileMode.Open, FileAccess.Read))
|
|
{
|
|
using (var reader = ExcelReaderFactory.CreateReader(stream))
|
|
{
|
|
var ds = reader.AsDataSet(new ExcelDataSetConfiguration
|
|
{
|
|
FilterSheet = (r1, sheetIndex) => sheetIndex != 1,
|
|
ConfigureDataTable = r1 => new ExcelDataTableConfiguration
|
|
{
|
|
UseHeaderRow = true,
|
|
ReadHeaderRow = r2 =>
|
|
{
|
|
r2.Read();
|
|
}
|
|
}
|
|
});
|
|
|
|
Assert.AreEqual(ds.Tables.Count, 1);
|
|
}
|
|
}
|
|
|
|
var ds2 = ExcelHelper.ReadExcelAsDataSet(path, new[] { 1 }, 0);
|
|
Assert.AreEqual(ds2.Tables.Count, 1);
|
|
var str = ds2.Tables[0].Rows[0]["你好"]?.ToString();
|
|
}
|
|
}
|
|
}
|