zoukankan      html  css  js  c++  java
  • npoi导出execl源码,vs2008实现,包括using库

    该链接有导入,导出源码,我的代码有下链接改写,完善而成的,

    http://www.cnblogs.com/colder/p/3611906.html

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Text;
    using System.IO;
    using System.Data;
    using NPOI;
    using NPOI.HPSF;
    using NPOI.HSSF;
    using NPOI.HSSF.UserModel;
    using NPOI.POIFS;
    using NPOI.Util;
    using NPOI.HSSF.Util;
    using NPOI.HSSF.Extractor;
    using NPOI.SS.UserModel;
    using System.Web.UI.HtmlControls;

    private void to_excel()
    {
    HSSFWorkbook workbook = new HSSFWorkbook();
    ISheet sheet = workbook.CreateSheet("Sheet1");
    MemoryStream ms = new MemoryStream();

    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 作为列名
    string[] temArr = { "帐号", "子帐号", "客户经理号(8位)", "开户日期(YYYYMMDD)" };
    List<string> headlist = new List<string>(temArr);
    int icolIndex = 0;
    IRow headerRow = sheet.CreateRow(0);
    foreach (var item in headlist)
    {
    ICell cell = headerRow.CreateCell(icolIndex);
    cell.SetCellValue(item);
    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);

    //建立内容行
    TMSDataContext dc = new TMSDataContext();

    var lctlist = dc.wd_lct_dq_import.ToList();
    int iRowIndex = 1;
    //int iCellIndex = 0;
    foreach (var lct in lctlist)
    {
    IRow DataRow = sheet.CreateRow(iRowIndex);

    //第1列 账号
    ICell cell = DataRow.CreateCell(0);
    cell.SetCellValue(lct.zh);
    cell.CellStyle = cellStyle;
    //第2列 子账号
    cell = DataRow.CreateCell(1);
    cell.SetCellValue(lct.zh_sub);
    cell.CellStyle = cellStyle;
    //第3列 客户经理号
    cell = DataRow.CreateCell(2);
    cell.SetCellValue(lct.emp_lch);
    cell.CellStyle = cellStyle;
    //第4列 开户日期
    cell = DataRow.CreateCell(3);
    cell.SetCellValue(lct.kh_rq);
    cell.CellStyle = cellStyle;


    iRowIndex++;
    }

    //自适应列宽度
    for (int i = 0; i < icolIndex; i++)
    {
    sheet.AutoSizeColumn(i);
    }
    workbook.Write(ms);
    Response.AddHeader("Content-Disposition", string.Format("attachment; filename=EmptyWorkbook.xls"));
    Response.BinaryWrite(ms.ToArray());

    workbook = null;
    ms.Close();
    ms.Dispose();

    }

  • 相关阅读:
    Poj 1742 Coins(多重背包)
    Poj 2350 Above Average(精度控制)
    求二进制数中1的个数
    Poj 1659 Distance on Chessboard(国际象棋的走子规则)
    Poj 2411 Mondriaan's Dream(压缩矩阵DP)
    Poj 2136 Vertical Histogram(打印垂直直方图)
    Poj 1401 Factorial(计算N!尾数0的个数——质因数分解)
    poj 2390 Bank Interest(计算本利和)
    Poj 2533 Longest Ordered Subsequence(LIS)
    Poj 1887 Testing the CATCHER(LIS)
  • 原文地址:https://www.cnblogs.com/shanwater/p/5638020.html
Copyright © 2011-2022 走看看