最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

asp.net实现数据从DataTable导入到Excel文件并创建表的方法

来源:动视网 责编:小采 时间:2020-11-27 22:38:02
文档

asp.net实现数据从DataTable导入到Excel文件并创建表的方法

asp.net实现数据从DataTable导入到Excel文件并创建表的方法:本文实例讲述了asp.net实现数据从DataTable导入到Excel文件并创建表的方法。分享给大家供大家参考,具体如下: /// <summary> /// 把数据从DataTable导入到Excel文件里 /// </summary> /// <param name=
推荐度:
导读asp.net实现数据从DataTable导入到Excel文件并创建表的方法:本文实例讲述了asp.net实现数据从DataTable导入到Excel文件并创建表的方法。分享给大家供大家参考,具体如下: /// <summary> /// 把数据从DataTable导入到Excel文件里 /// </summary> /// <param name=


本文实例讲述了asp.net实现数据从DataTable导入到Excel文件并创建表的方法。分享给大家供大家参考,具体如下:

/// <summary>
/// 把数据从DataTable导入到Excel文件里
/// </summary>
/// <param name="dataTable">数据源</param>
/// <param name="AbsoluteExcelFilePath">Excel文件的绝对路径</param>
/// <param name="TblColName">TBL里对应的列名</param>
/// <param name="ColumnName">Excel中对应的列名</param>
/// <returns>操作成功返回True,失败返回False</returns>
public static bool ExportDataToExcel(DataTable dataTable, string AbsoluteExcelFilePath, string[] TblColName, string[] ColumnName)
{
 int k = 0;
 if (dataTable == null) return false;
 OleDbConnection Conn = new OleDbConnection();
 try
 {
 string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + AbsoluteExcelFilePath + ";Mode=Share Deny None;Extended Properties=Excel 8.0;Jet OLEDB:Create System Database=True";
 Conn = new OleDbConnection(strConn);
 Conn.Open();
 OleDbCommand command = Conn.CreateCommand();
 string strSQL = "";
 if (dataTable.Columns != null)
 {
 //建表
 strSQL = "CREATE TABLE " + dataTable.TableName + "(";
 for (int i = 0; i < ColumnName.Length; i++)
 {
 strSQL += ColumnName[i] + " TEXT,";
 }
 strSQL = strSQL.Substring(0, strSQL.Length - 1);
 strSQL += ")";
 command.CommandText += strSQL;
 command.ExecuteNonQuery();
 if (dataTable.Rows.Count > 0)
 {
 //导入数据
 foreach (DataRow row in dataTable.Rows)
 {
 strSQL = "insert into " + dataTable.TableName + "(";
 for (k = 0; k < TblColName.Length; k++)
 {
 strSQL += ColumnName[k] + ",";
 }
 strSQL = strSQL.Substring(0, strSQL.Length - 1);
 strSQL += ") values( ";
 for (k = 0; k < TblColName.Length; k++)
 {
 strSQL += "'" + row[TblColName[k]] + "',";
 }
 strSQL = strSQL.Substring(0, strSQL.Length - 1);
 strSQL += ")";
 command.CommandText = strSQL;
 command.ExecuteNonQuery();
 }
 }
 }
 }
 catch (Exception ex)
 {
 Conn.Close();
 throw new Exception(ex.Message);
 return false;
 }
 Conn.Close();
 return true;
}

调用方法:

DataSet ds = (DataSet)Session["listMobile"];//获得要导出的表格的值
if (ds.Tables[0].Rows.Count <= 0)
{
 Page.RegisterStartupScript("", "<mce:script type="text/javascript"><!--
alert('没有内容不能导出!')
// --></mce:script>");
}
else
{
 //EXCEL页面的名称
 string[] tableName = { "["+DateTime.Now.ToString("yyyyMMddhhmmss")+"]" };
 string fileName = tools.CreateID() + ".xls";
 string filePath = Server.MapPath("..//DownloadFiles//" + fileName);
 if (tools.ExportDataToExcel(ds, filePath, tableName)==true)
 {
 Response.Clear();
 Response.Buffer = true;
 Response.Charset = "GB2312";
 Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName);
 Response.ContentType = "application/vnd.ms-excel";
 this.EnableViewState = false;
 Response.WriteFile(filePath);
 Response.Flush();
 if (System.IO.File.Exists(filePath)) System.IO.File.Delete(filePath);
 Response.Redirect(this.Request.UrlReferrer.AbsoluteUri, true);
 Response.End();
 }
}

希望本文所述对大家asp.net程序设计有所帮助。

文档

asp.net实现数据从DataTable导入到Excel文件并创建表的方法

asp.net实现数据从DataTable导入到Excel文件并创建表的方法:本文实例讲述了asp.net实现数据从DataTable导入到Excel文件并创建表的方法。分享给大家供大家参考,具体如下: /// <summary> /// 把数据从DataTable导入到Excel文件里 /// </summary> /// <param name=
推荐度:
标签: 文件 方法 excel
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top