求ASP.NET将Excel导入到数据库的完整例子?急!!!(一个sheet中的数据导入到多个数据库表) 200
求ASP.NET将Excel导入到数据库的完整例子?急!!!(一个sheet中的数据导入到多个数据库表)例如:D:\x1文件夹中有一个excel文件abc.xlsx,现需...
求ASP.NET将Excel导入到数据库的完整例子?急!!!(一个sheet中的数据导入到多个数据库表)
例如:D:\x1文件夹中有一个excel文件abc.xlsx,现需要使用C#编程,将abc.xlsx文件中的工作表(Sheet1)的单元格的内容导入sql数据库名为zzz的表zx,zc,zv,zb,zn等多张表中(Sheet1中的单元格对应 zx,zc,zv,zb,zn等多张中的字段)!
请将给个详细的代码。 展开
例如:D:\x1文件夹中有一个excel文件abc.xlsx,现需要使用C#编程,将abc.xlsx文件中的工作表(Sheet1)的单元格的内容导入sql数据库名为zzz的表zx,zc,zv,zb,zn等多张表中(Sheet1中的单元格对应 zx,zc,zv,zb,zn等多张中的字段)!
请将给个详细的代码。 展开
1个回答
2013-07-17
展开全部
/// <summary>
/// 读Excel文件
/// </summary>
/// <param name="filePath"></param>
/// <returns>DataTable</returns>
public static DataTable readCDEDataFile(string filePath,string condition)
{
DataTable dt = new DataTable();
object missing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();//lauch excel application
try
{
Microsoft.Office.Interop.Excel.Workbook xlsBook = excel.Workbooks.Open(filePath, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
if (excel == null)
{
//Response.Write("<script>alert('Can't access excel')</script>");
}
else
{
Microsoft.Office.Interop.Excel.Worksheet wsheet = (Microsoft.Office.Interop.Excel.Worksheet)xlsBook.Worksheets.get_Item(1);
string name = wsheet.Name;
xlsBook.Close(false, Type.Missing, Type.Missing);
excel.Quit();
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + filePath + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection oledbConn = new OleDbConnection(strConn);
oledbConn.Open();
string strExcel = "select " + condition + " from [" + name + "$]";
OleDbDataAdapter myCommand = new OleDbDataAdapter(strExcel, strConn);
DataSet ds = new DataSet();
myCommand.Fill(dt);
oledbConn.Close();
}
}
catch (Exception e)
{
Console.Write(e.Message.ToString());
//SaveNote(e.ToString());
}
finally
{
if (excel != null) excel.Quit();
GC.Collect();
}
if (excel != null) excel.Quit();
return dt;
}
取得后 循环插入就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询