zoukankan      html  css  js  c++  java
  • 简单excel的导入导出

    需引用程序集

    导出:

      List<类型> lists = new List<类型>;
                //数据是存储在工作表中的,但是创建工作表需要先创建出工作薄。有了工作薄就可以根据工作薄创建出工作表
                //1.创建出工作薄
                HSSFWorkbook workbook = new HSSFWorkbook();
                //2.创建该工作薄的工作表
                //HSSFSheet sheet1 = new HSSFSheet(workbook);
                HSSFSheet sheet1 = workbook.CreateSheet();
                //3.往工作表中填写数据
                for (int i = 0; i < lists.Count; i++)
                {
                    //每一个对象就对应着一行数据
                    //4.先创建出sheet表的数据行对象
                    HSSFRow row = sheet1.CreateRow(i);
                    //5.1为行的每一列添加数据---先创建出行的列
    HSSFCell cell1 = row.CreateCell(0); //5.2 为这一列赋值 cell1.SetCellValue(lists[i].CID);
    HSSFCell cell2
    = row.CreateCell(1); //5.2 为这一列赋值 cell2.SetCellValue(lists[i].CName); //工作薄创建好之后,还需要使用文件流将数据写入到物理文件 using(FileStream fs=new FileStream(@"C:UsersjohnDesktop11.xls",FileMode.Create)) { workbook.Write(fs); }

    导入:

      //导入:将指定的文件读取出来
                using(FileStream fs=new FileStream(@"C:UsersjohnDesktop11.xls",FileMode.Open))
                {
                    //1.将读取出的数据生成一个工作薄
                    HSSFWorkbook workbook = new HSSFWorkbook(fs);
                    //2.需要取出这个工作薄中的工作表
                    HSSFSheet sheet = workbook.GetSheetAt(0);
                    //3.循环读取这张表中的每一行数据.因为从那一行开始写入是可以修改的,那么FirstRowNum就记录开始写入的行,LastRowNum就记录最后一行
                    StringBuilder sb = new StringBuilder();
                    List<类型> lists = new List<类型>();
                    for (int row = sheet.FirstRowNum; row <= sheet.LastRowNum; row++)
                    {
                        //4每一行数据就会对应着一个对象
                        MODEL.Classes clas = new MODEL.Classes();
                        //先取出这一行
                        HSSFRow curow = sheet.GetRow(row);
                   
                        clas.CID = (int)curow.GetCell(0).NumericCellValue;
                        clas.CName = curow.GetCell(1).StringCellValue;
                        clas.CCount = (int)curow.GetCell(2).NumericCellValue;
                        clas.CImg = curow.GetCell(3).StringCellValue;
                        clas.CIsDel = (bool)curow.GetCell(4).BooleanCellValue;
                        clas.CAddTime = Convert.ToDateTime(curow.GetCell(5).DateCellValue);
                        lists.Add(clas);
                    }
  • 相关阅读:
    Linux下的CPU使用率与服务器负载的关系与区别
    zabbix修改Template OS Linux模版使已使用内存(Used memory)更准确
    mysql查询时间戳和日期的转换
    python logging模块
    网络编程(TCP)
    网络编程(UDP)
    计算机网络
    IO流(字符流)
    IO流(字节流)
    算法
  • 原文地址:https://www.cnblogs.com/junhuang/p/4081502.html
Copyright © 2011-2022 走看看