zoukankan      html  css  js  c++  java
  • excel导入、导出

    http://blog.csdn.net/cjh200102/article/details/12557599

    NPOI

    工作本HSSFWorkbook

      构造方法,无参表示创建一个新的工作本,可以接收一个流用于打开一个现有的工作本

      方法CreateSheet(索引):创建指定索引的sheet对象

      方法GetSheetAt(索引):根据索引获取sheet对象

      方法CreateCellStyle():创建单元格样式对象

      方法CreateFont():创建字体对象

      方法Write(stream):将工作本输出到流中

    工作表HSSFSheet

      方法CreateRow(索引):创建指定索引的行

      方法GetRow(索引):根据索引获取行

      方法AddMergedRegion():设置合并区域,参数包括开始行索引、开始列索引、结束行索引、结束列索引

      方法SetColumnWidth(索引,宽度):设置指定列的宽度,单位是一个字符宽度的256分之1(一个汉字占用两个字符)

      属性FirstRowNum、LastRowNum:获取第一行、最后一行的索引值

    行HSSFRow

      方法CreateCell(索引):创建指定索引的行

      方法GetCell(索引):根据索引获取单元格

      属性HeightInPoints:指定或设置高度

    单元格HSSFCell

      方法SetCellValue():设置单元格中的值

      属性***CellValue:获取单元格中指定类型的值,如果类型不匹配则抛异常

      属性CellStyle:获取或设置单元格样式

    单元格样式HSSFCellStyle

      方法SetFont(字体对象):设置字体样式

      属性Alignment:水平对齐,1左,2中,3右

    字体对象HSSFFont

      属性FontHeightInPoints:获取或设置字体大小

      属性Boldweight:获取或设置字体加粗

    导出

    //创建一个工作本
                HSSFWorkbook wb = new HSSFWorkbook();
                //创建sheet
                ISheet sheet = wb.CreateSheet("测试");
                //设置头合并单元格
                sheet.AddMergedRegion(new CellRangeAddress(0,0,0,1));
                //创建row
                IRow row0 = sheet.CreateRow(0);
                //创建cell
                ICell cell = row0.CreateCell(0);
                //为cell设置值
                cell.SetCellValue ("demo");
                //创建cellStyle
                ICellStyle cellStyle = wb.CreateCellStyle();
                //字体居中
                cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
                //为cell添加样式
                cell.CellStyle = cellStyle;
                //创建标题行
                IRow row1 = sheet.CreateRow(1);
                //创建cell
                ICell cell0 = row0.CreateCell(0);
                cell0.SetCellValue("编号");
                cell0.CellStyle = cellStyle;
                ICell cell1 = row0.CreateCell(1);
                cell1.SetCellValue("类型");
                cell1.CellStyle = cellStyle;
                //设置创建行的索引,因为已经创建过两行,所以从索引2开始创建
                int index = 2;
                //遍历datatable创建row、cell
                foreach (DataRow item in dt.Rows)
                {
                    IRow row = sheet.CreateRow(index++);
                    ICell cellFirst = row.CreateCell(0);
                    cellFirst.SetCellValue(item["BookTypeId"].ToString());
                    ICell cellSecond = row.CreateCell(1);
                    cellSecond.SetCellValue(item["BookTypeName"].ToString());
                }
                //创建或打开文件
                using (FileStream fs = new FileStream(@"D:UsersDesktopdemo.xls",FileMode.OpenOrCreate))
                {
                    //往文件里写数据
                    wb.Write(fs);
             fs.Close(); }

    导入

     List<BookType> list = new List<BookType>();
                using (FileStream fs=new FileStream(@"D:UsersDesktopdemo.xls",FileMode.OpenOrCreate))
                {
                    HSSFWorkbook wb = new HSSFWorkbook(fs);
                    ISheet sheet = wb.GetSheetAt(0);
                    int index = 2;
                    IRow row = sheet.GetRow(2);
                    while (row!=null)
                    {
                        list.Add(new BookType()
                        {
                            BookTypeId = Convert.ToInt32(row.GetCell(0).StringCellValue),
                            BookTypeName = row.GetCell(1).StringCellValue
                        });
                        row = sheet.GetRow(index++);
                    }
  • 相关阅读:
    新一代MQ apache pulsar的架构与核心概念
    Flutter使用fluwx实现微信分享
    BZOJ3622 已经没有什么好害怕的了 动态规划 容斥原理 组合数学
    NOIP2016提高组Day1T2 天天爱跑步 树链剖分 LCA 倍增 差分
    Codeforces 555C Case of Chocolate 其他
    NOIP2017提高组Day2T3 列队 洛谷P3960 线段树
    NOIP2017提高组Day2T2 宝藏 洛谷P3959 状压dp
    NOIP2017提高组Day1T3 逛公园 洛谷P3953 Tarjan 强连通缩点 SPFA 动态规划 最短路 拓扑序
    Codeforces 873F Forbidden Indices 字符串 SAM/(SA+单调栈)
    Codeforces 873E Awards For Contestants ST表
  • 原文地址:https://www.cnblogs.com/xiaonangua/p/7428867.html
Copyright © 2011-2022 走看看