Asp.Net 导入Excel自动获取表名
2024-08-24 22:23:35
public static DataSet ReadExcel(string Path, string fileType)
{
//服务器需要安装驱动
//http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe
//try
//{
//string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + Path + ";" + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=2\""; string connectionString = "";
if (fileType == "xls")
{
connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Path + ";;Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";
}
else
{
connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Path + ";;Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\"";
}
OleDbConnection connection = new OleDbConnection(connectionString);
connection.Open();
string selectCommandText = "";
OleDbDataAdapter adapter = null;
DataSet dataSet = null; System.Data.DataTable sTable = connection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
string tableName = sTable.Rows[][].ToString().Trim();//默认表名Sheet1,如果修改了则无法导入,所以需要动态获取表面
//selectCommandText = "select * from [Sheet1$]";//默认表名Sheet1
selectCommandText = "select * from [" + tableName + "]";
adapter = new OleDbDataAdapter(selectCommandText, connectionString);
dataSet = new DataSet();
adapter.Fill(dataSet, "table1");
connection.Close();
connection.Dispose();
return dataSet;
//}
//catch
//{
// return null;
//}
}
最新文章
- Qt 程序打包发布
- sql查询重复数据
- [AlwaysOn Availability Groups]SQL Server错误日志(AG)
- SQLite遇到的关于x64、x86问题
- mybatis配置优化
- [Shell]字符截取命令:cut, printf, awk, sed
- 推荐使用C++ 11
- freemark 判断是否为空 是否存在
- Js判断对象是否为空,Js判断字符串是否为空
- Erp第三章:管理问题与MRP、MRP2、ERP
- 【转向Javascript系列】从setTimeout说事件循环模型
- 扩展方法之ToDictionary()
- Hibernate第十篇【Hibernate查询详解、分页查询】
- LOJ6001 - 「网络流 24 题」太空飞行计划
- Kubernetes 笔记 09 DaemonSet 我是一只看门狗
- C#如何以管理员身份运行程序 转
- xhr post请求
- IE浏览器兼容的处理方式之一,使用特殊的注释 <;!--[if IE]>; ....<;![endif]-->;
- go语言学习--map的并发
- python catch socket timeout
热门文章
- poj2184 Cow Exhibition【01背包】+【负数处理】+(求两个变量的和最大)
- pycharm-2018.1.6永久激活(本人使用的是centos7)
- HDU 5628 Clarke and math——卷积,dp,组合
- CF733F Drivers Dissatisfaction【链剖】【最小生成树应用】
- CocosCreator核心概念里的基础点
- 吐槽下intellij idea 2018.3这个版本
- 详解Paint的setColorFilter(ColorFilter filter)
- 奇怪吸引子---RayleighBenard
- iOS开发-获取属性和方法
- SQL Server 2012安装step by step