C#把excel数据转换成DataTable
private DataTable TurnExcelToDataTable(string path)
{
try
{
if (Path.GetExtension(path).Contains("xlsx")) //office版本2007及以上
{
XSSFWorkbook hssfworkbook = null;
using (FileStream file = new FileStream(path, FileMode.Open, FileAccess.Read))
{
hssfworkbook = new XSSFWorkbook(file);
}
//第一个sheet页
ISheet sheet = hssfworkbook.GetSheetAt(0);
string sheetName = hssfworkbook.GetSheetName(0);
DataTable dt = new DataTable();
IRow headerRow = sheet.GetRow(0);
int cellCount = headerRow.LastCellNum;
for (int i = headerRow.FirstCellNum; i < cellCount; i++)
{
DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue);
dt.Columns.Add(column);
}
int rowCount = sheet.LastRowNum;
for (int i = (sheet.FirstRowNum + 1); i <= sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i);
DataRow dataRow = dt.NewRow();
if (row != null)
{
for (int j = row.FirstCellNum; j < cellCount; j++)
{
if (row.GetCell(j) != null)
dataRow[j] = row.GetCell(j).ToString();
else dataRow[j] = "";
}
dt.Rows.Add(dataRow);
}
}
sheet = null;
hssfworkbook = null;
return dt;
}
else
{
HSSFWorkbook hssfworkbook = null;
using (FileStream file = new FileStream(path, FileMode.Open, FileAccess.Read))
{
hssfworkbook = new HSSFWorkbook(file);
}
//第一个sheet
ISheet sheet = hssfworkbook.GetSheetAt(0);
string sheetName = hssfworkbook.GetSheetName(0);
DataTable dt = new DataTable();
IRow headerRow = sheet.GetRow(0);
int cellCount = headerRow.LastCellNum;
for (int i = headerRow.FirstCellNum; i < cellCount; i++)
{
DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue);
dt.Columns.Add(column);
}
int rowCount = sheet.LastRowNum;
for (int i = (sheet.FirstRowNum + 1); i <= sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i);
DataRow dataRow = dt.NewRow();
for (int j = row.FirstCellNum; j < cellCount; j++)
{
if (row.GetCell(j) != null)
dataRow[j] = row.GetCell(j).ToString();
else dataRow[j] = "";
}
dt.Rows.Add(dataRow);
}
sheet = null;
hssfworkbook = null;
return dt;
}
}
catch(exception ex)
{
MessageBox.show(ex.message);
return null;
}
}
C#把excel数据转换成DataTable相关推荐
- 使用Echarts将Excel数据转换成色彩地图HTML小工具
朋友有个需求想要把excel数据转换成地图分布图,而且想要动态修改数据生成不同时间段的数据,于是我就想办法给他做了个工具,下面是所有代码逻辑,很简单代码,结尾附带源码文件,只有一个html文件,很方便 ...
- 将GrilView中的数据转换成DataTable
//在webform开发中难免会遇到将GrilView中的数据转换成DataTable,下面的类将实现这个功能,但仅是显示出来的数据,如有分页得另行处理. using System; using Sy ...
- windows系统下如何把excel数据转换成markdown格式的表格
如图,假设我有一个excel表格,想把里面的数据转换成markdown格式的表格: 只需选中excel表格里这些数据, 打开typero这个软件: 按Ctrl V,excel表格的数据就自动被转换成了 ...
- xlsx.full.js读取Excel数据转换成二维数组,sheet_to_array
xlsx.full.js读取Excel的sheet数据转换成二维数组,sheet_to_array 解析sheet数据为二维数组 测试方法 效果 鉴于js-xlsx.js没有XLSX.util.she ...
- 将excel转为python的字典_python读取excel数据转换成字典
以上面的excel格式,输出字典类型: import xlrd def read_excel_data(): filename = 'E:\学历列表.xls' data = xlrd.open_wor ...
- excel数据转换成对应公式
今天,我们通过excel表格来实现数据公式的提取. 0.76 24 0.7 23 0.64 22 0.58 21 0.54 20 0.5 19 0.47 18 0.43 17 0.41 16 0.38 ...
- Lua工具:Excel数据转换成Lua文件
现在很多手游使用Cocos2dx + Lua 的开发模式,在这过程中,很多游戏的基础数据,放在哪里,什么格式,怎么做效率最高. 当然是你已经采用的开发模式了, 基础数据做成Lua 文件,才是最好的,读 ...
- TXT文本数据转换成Excel表格
TXT文本数据转换成Excel表格 打开EXCEL-数据--获取外部数据--导入文本文件--找到文件点导入--选择分隔符号--下一步--(逗号打勾,空格打勾,其他打勾)
- word列表数据计算机,怎么把树状图的数据填成excel表格-谁会计算机啊,怎么把word里的表格数据转换成簇状......
excel中生成后的数据透视表如何把树形结构每层的空... 打开Word文档窗口,切换到"插入"功能区.在"插图"分组中单击"图表"按钮. ...
- java table数据转excel,excel将数据转化成表格-如何将java数据转换成Excel表格
excel 怎么把三列数据转换成一张表? 1.打开 OCR识别软然后单击"打开图像/PDF-"按钮 2弹出的"打开图窗口中,选择需要的扫描文件, 3.然后单击" ...
最新文章
- javaweb带父标签的自定义标签
- python去除字符串两边的空格_Python去除字符串两端空格的方法
- 一篇总结的很好的Spring data jpa 文章,里面包含多种查询方式,可以结合api使用
- 百度上线独立视频App百度看看,能搜到微视、B站内容?
- 8080端口被占用bug解决办法
- html5-table布局
- python编程(orm原理和实践)
- hnu 暑期实训之最少钱币数
- 机器人编程python代码_自己动手开发智能聊天机器人完全指南(附python完整源码)...
- 2016年物联网行业十大并购事件
- outermost shell_outermost是什么意思_outermost的翻译_音标_读音_用法_例句_爱词霸在线词典...
- web前端性能优化的技巧
- operation is executing and cannot be enqueued
- 谈谈对从业IT行业看法
- 在Microsoft Office 2007中检测和修复应用程序
- Android Studio Entry name *.xml collided解决方案
- Windows服务器双网卡冲突
- Fedora 30 将默认启用 DNF-best 模式
- 医学影像研究的重要性 计算机,计算机辅助医学影像诊查之关键学习技术研究.doc...
- ECCV2022细粒度图像检索SEMICON学习记录