NOPI匯出標準格式Excel
新增引用NOPI,官網下載地址NOPI下載地址選擇合適的版本,根據你自己的專案的.net版本選擇引用的dll有2.0和4.0的,vs2010以上可以選4.0的 剩下的都選2.0的吧,引用一下NPOI.dll就行其他的,不用引用,如果用到nopi的其他功能自行百度引用
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
private void Excel(DataTable dt, string FileName)
{
try
{
HSSFWorkbook workbook = new HSSFWorkbook();
ISheet sheet = workbook.CreateSheet("Sheet1");
ICellStyle HeadercellStyle = workbook.CreateCellStyle();
HeadercellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
HeadercellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
HeadercellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
HeadercellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
HeadercellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
//字型
NPOI.SS.UserModel.IFont headerfont = workbook.CreateFont();
headerfont.Boldweight = (short)FontBoldWeight.Bold;
HeadercellStyle.SetFont(headerfont);
//用column name 作為列名
int icolIndex = 0;
IRow headerRow = sheet.CreateRow(0);
foreach (DataColumn item in dt.Columns)
{
ICell cell = headerRow.CreateCell(icolIndex);
cell.SetCellValue(item.ColumnName);
cell.CellStyle = HeadercellStyle;
icolIndex++;
}
ICellStyle cellStyle = workbook.CreateCellStyle();
//為避免日期格式被Excel自動替換,所以設定 format 為 『@』 表示一率當成text來看
cellStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("@");
cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
NPOI.SS.UserModel.IFont cellfont = workbook.CreateFont();
cellfont.Boldweight = (short)FontBoldWeight.Normal;
cellStyle.SetFont(cellfont);
//建立內容行
int iRowIndex = 1;
int iCellIndex = 0;
foreach (DataRow Rowitem in dt.Rows)
{
IRow DataRow = sheet.CreateRow(iRowIndex);
foreach (DataColumn Colitem in dt.Columns)
{
ICell cell = DataRow.CreateCell(iCellIndex);
cell.SetCellValue(Rowitem[Colitem].ToString());
cell.CellStyle = cellStyle;
iCellIndex++;
}
iCellIndex = 0;
iRowIndex++;
}
//自適應列寬度
for (int i = 0; i < icolIndex; i++)
{
sheet.AutoSizeColumn(i);
}
//寫Excel
//FileStream file = new FileStream(FileName, FileMode.OpenOrCreate);
System.IO.MemoryStream file = new System.IO.MemoryStream();
workbook.Write(file);
Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(FileName) + ".xls");
Response.BinaryWrite(file.ToArray());
workbook = null;
file.Close();
file.Dispose();
}
catch (Exception ex)
{
Response.Write("<script>alert('" + ex.Message + "')</scrit>");
}
}
相關文章
- OleDb匯出標準格式EXCEL,Excel
- asp.net framework4.0 使用NOPI(一)匯出excelASP.NETFrameworkExcel
- oracle 匯出excel 格式整改OracleExcel
- cxGrid時間格式與匯出ExcelExcel
- Dbeaver 匯出Excel 格式變化的問題Excel
- 用postman測試get/post匯出excel格式PostmanExcel
- ORACLE資料表匯出成EXCEL格式(ODBC)OracleExcel
- 使用spire.doc匯出支援編輯Latex公式的標準格式word公式
- 匯出excelExcel
- 資料泵匯出匯入資料標準文件
- 不安裝標準件如何直接匯出含有標準件的BOM
- vue excel匯入匯出VueExcel
- js匯出EXCELjs匯出EXCELJSExcel
- PHP 匯出 ExcelPHPExcel
- PHP匯出EXCELPHPExcel
- Vue匯出ExcelVueExcel
- Java匯出ExcelJavaExcel
- php 匯出excelPHPExcel
- POI 匯出ExcelExcel
- 標準差excel用什麼函式 excel標準偏差的公式Excel函式公式
- java匯出Excel定義匯出模板JavaExcel
- Excel模板匯出之動態匯出Excel
- Angular Excel 匯入與匯出AngularExcel
- 騰訊文件怎樣匯出excel表格 騰訊文件如何匯出excelExcel
- Java 通過Xml匯出Excel檔案,Java Excel 匯出工具類,Java匯出Excel工具類JavaXMLExcel
- js匯出Excel表格JSExcel
- vue匯出Excel表格VueExcel
- Excel優雅匯出Excel
- Excel匯出實列Excel
- Springmvc匯出excelSpringMVCExcel
- appfuse:Excel匯出APPExcel
- DataGridView匯出ExcelViewExcel
- vue 前端匯出 excelVue前端Excel
- poi的excel匯出Excel
- 用jml匯出數字時,excel單元格格式化文字格式轉化成數字格式Excel
- html5標準格式HTML
- 標準 DateTime 格式字串字串
- kxcel, 方便匯入和匯出 ExcelExcel