国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

Asp.Net使用Npoi導入導出Excel的方法

2024-07-10 13:28:07
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Asp.Net使用Npoi導入導出Excel的方法,采用該方法在導出Excel的時候不需要office組件的支持,而在導入Excel的時候采用OleDb的方式,需要office組件的支持。是一個非常實用的技巧,需要的朋友可以參考下
 
 

asp.net針對Excel文件的導入與導出是非常常見的功能之一。本文實例講述了Asp.Net使用Npoi導入導出Excel的方法。分享給大家供大家參考之用。具體方法如下:

在使用Npoi導出Excel的時候,服務器可以不裝任何office組件,一般在導出時用到Npoi導出Excel文件,所導Excel也符合規范,打開時也不會有任何文件損壞之類的提示。但是在做導入時還是使用OleDb的方式,這種方式的導入在服務器端似乎還是需要裝office組件的。

一、Npoi導出/下載Excel

具體功能代碼如下:

public void NpoiExcel(DataTable dt, string title){  NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();  NPOI.SS.UserModel.ISheet sheet = book.CreateSheet("Sheet1");  NPOI.SS.UserModel.IRow headerrow = sheet.CreateRow(0);  ICellStyle style = book.CreateCellStyle();  style.Alignment = HorizontalAlignment.Center;  style.VerticalAlignment = VerticalAlignment.Center;  for (int i = 0; i < dt.Columns.Count; i++)  { ICell cell = headerrow.CreateCell(i); cell.CellStyle = style; cell.SetCellValue(dt.Columns[i].ColumnName);  }  MemoryStream ms = new MemoryStream();  book.Write(ms);  Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.xls", HttpUtility.UrlEncode(title + "_" + DateTime.Now.ToString("yyyy-MM-dd"), System.Text.Encoding.UTF8)));  Response.BinaryWrite(ms.ToArray());  Response.End();  book = null;  ms.Close();  ms.Dispose();}

二、Asp.Net導入Excel

導入仍然是用OleDb這種方式,感興趣的朋友可以嘗試一下其他方法。

具體功能代碼如下:

/// <summary>/// 連接Excel 讀取Excel數據  并返回DataSet數據集合/// </summary>/// <param name="filepath">Excel服務器路徑</param>/// <param name="tableName">Excel表名稱</param>/// <returns></returns>public static System.Data.DataSet ExcelSqlConnection(string filepath, string tableName){  string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";  OleDbConnection ExcelConn = new OleDbConnection(strCon);  try  { string strCom = string.Format("SELECT * FROM [Sheet1$]"); ExcelConn.Open(); OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, ExcelConn); DataSet ds = new DataSet(); myCommand.Fill(ds, "[" + tableName + "$]"); ExcelConn.Close(); return ds;  }  catch  { ExcelConn.Close(); return null;  }}

相信本文所述對大家的asp.net程序設計有一定的借鑒價值。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吐鲁番市| 宁波市| 阿克苏市| 佛坪县| 叶城县| 遂平县| 安远县| 拜城县| 临朐县| 东兰县| 株洲市| 江达县| 尉犁县| 永福县| 苍梧县| 西贡区| 中山市| 江安县| 和田县| 五大连池市| 于田县| 唐海县| 修文县| 肇源县| 临沧市| 遂溪县| 白水县| 板桥市| 奈曼旗| 固镇县| 漳平市| 阳谷县| 平和县| 彭泽县| 葵青区| 南陵县| 亚东县| 广宗县| 阳曲县| 年辖:市辖区| 乐至县|