Excel数据格式如图,需要用C# NPOI库读取并将其转换成 C#类。
当前excel的数据读取只需要第4列,数据可以读到,但怎样将他转换成对象不知道如何操作?
IWorkbook workbook = null;
FileStream fileStream = File.OpenRead(fileName);
string suffix = Path.GetExtension(fileName);
if (suffix.Equals(".xls"))
{
workbook = new HSSFWorkbook(fileStream);
}
else if (suffix.Equals(".xlsx"))
{
workbook = new XSSFWorkbook(fileStream);
}
if (workbook != null)
{
ISheet sheet = workbook.GetSheetAt(0);
IRow row = sheet.GetRow(0); //读取当前行数据
for (int i = 0; i <= sheet.LastRowNum; i++)
{
row = sheet.GetRow(i); //读取当前行数据
if (row != null)
{
//LastCellNum 是当前行的总列数
// for (int j = 0; j < row.LastCellNum; j++)
// {
//读取该行的第j列数据
string value = row.GetCell(4).ToString();
Debug.WriteLine(value.ToString());
// }
}
}
}
数据对象类部分属性:
/*制动初速度*/
[Column(4)]
public float edNoLoadBrakeSpeed { get; set; }
/*制动距离*/
[Column(4)]
public float edNoLoadBrakeDistance { get; set; }
[Column(4)]
public float edNoLoadMFDD { get; set; }
/*制动力*/
[Column(4)]
public float edNoLoadBrakeForce { get; set; }
/*发动机脱开 - 满载*/
/*制动初速度*/
[Column(4)]
public float edLoadBrakeSpeed { get; set; }
/*制动距离*/
[Column(4)]
public float edLoadBrakeDistance { get; set; }
[Column(4)]
public float edLoadMFDD { get; set; }
/*制动力*/
[Column(4)]
public float edLoadBrakeForce { get; set; }
网上找了个博客是转换成List的,试了下不符合需求。请教下有没有相关的例子可以参考,谢谢