asp.net – 如何将流excel文件转换为数据表C#?
发布时间:2020-05-28 02:44:56 所属栏目:asp.Net 来源:互联网
导读:我使用Epplus从流中读取xlsx文件. 它有一个错误,它无法读取我的工作簿中的一些列.如何在没有epplus的情况下将xlsx文件从流读取到数据表? 我的旧代码: public static DataSet ReadExcelFile(Stream stream) { try { //2. Reading from a OpenX
|
我使用Epplus从流中读取xlsx文件. 它有一个错误,它无法读取我的工作簿中的一些列.如何在没有epplus的情况下将xlsx文件从流读取到数据表? 我的旧代码: public static DataSet ReadExcelFile(Stream stream)
{
try
{
//2. Reading from a OpenXml Excel file (2007 format; *.xlsx)
IExcelDataReader excelReader =
ExcelReaderFactory.CreateOpenXmlReader(stream);
//...
DataSet result = excelReader.AsDataSet();
return result;
}
catch (Exception x)
{
throw x;
}
}
我没有报告它,但我尝试了很多组合.如果工作表中有空列,epplus阅读器无法正确读取列值. 解决方法
你能描述一下这个bug,你有reported它还是已经知道的,你用的是什么版本? 这是一个使用EPPlus将excel文件加载到DataTable的简单方法. public static DataTable getDataTableFromExcel(string path)
{
using (var pck = new OfficeOpenXml.ExcelPackage())
{
using (var stream = File.OpenRead(path))
{
pck.Load(stream);
}
var ws = pck.Workbook.Worksheets.First();
DataTable tbl = new DataTable();
bool hasHeader = true; // adjust it accordingly( i've mentioned that this is a simple approach)
foreach (var firstRowCell in ws.Cells[1,1,ws.Dimension.End.Column])
{
tbl.Columns.Add(hasHeader ? firstRowCell.Text : string.Format("Column {0}",firstRowCell.Start.Column));
}
var startRow = hasHeader ? 2 : 1;
for (var rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
{
var wsRow = ws.Cells[rowNum,rowNum,ws.Dimension.End.Column];
var row = tbl.NewRow();
foreach (var cell in wsRow)
{
row[cell.Start.Column - 1] = cell.Text;
}
tbl.Rows.Add(row);
}
return tbl;
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-core – compilationOptions.emitEntryPoint是什么
- asp.net-mvc-3 – ASP.NET MVC 3,RavenDB和Autofac Issue P
- asp.net-mvc – 如何获取某些代码在ASP.NET MVC 2中的每个单
- 有没有任何好的ASP.NET MVC2或MVC3作弊表?
- asp.net-mvc – 使用asp.net MVC重定向到404页面
- 如何检测ASP.NET应用程序中的SqlServer连接泄漏?
- asp.net-mvc – 在存储库之间调用方法 – 存储库模式
- asp.net – 在应用程序级别之外注册为allowDefinition =’M
- asp.net-core – asp.net核心身份中的多个SubDomain的cooki
- asp.net – 如何填充asp:DropDown客户端?
推荐文章
站长推荐
热点阅读
