zoukankan      html  css  js  c++  java
  • 使用NPOI进行Excel操作

    一、NPOI组件导入

    右键项目菜单,“管理NuGet程序包”

    直接搜索“NPOI”即会出现列表,下载第一个进行安装即可

    安装完成后项目引用会出现以下几项

    二、基础使用

    添加引用

    using NPOI.HPSF;
    using NPOI.HSSF.UserModel;
    using NPOI.SS.UserModel;

    Excel操作开始

    HSSFWorkbook hssfworkbook = new HSSFWorkbook();//先创建Workbook
    ISheet sheet= hssfworkbook.CreateSheet("Sheet1");//创建sheet页
    IRow row1=sheet.CreateRow(0);//创建行
    row1.CreateCell(0).SetCellValue("test");//创建单元格并设置值

    文件导出

    FileStream file = new FileStream(sFilePath, FileMode.Create);
     hssfworkbook.Write(file);
     file.Close();

    三、样式及单元格操作

    //设置列宽(字符宽度)
    sheet.SetColumnWidth(0, 10 * 256);//第一列,10个字符宽度
    
    //设置行高
    row.HeightInPoints = 40;//高度(像素)
    
    //设置网格的默认行高和列框
    sheet.DefaultColumnWidth=100*256;
    sheet.DefaultRowHeightInPoints = 30;
    //设置单元格样式 
    
    //样式创建
                ICellStyle style = hssfworkbook.CreateCellStyle();
                style.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;//文字横向居中
                style.VerticalAlignment = VerticalAlignment.Center;//文字纵向居中
                IFont font = hssfworkbook.CreateFont();//字体
                font.FontHeight = 20 * 20;
                style.SetFont(font);
    
                ICell cell = row.Cells[0];//获取单元格对象
                cell.CellStyle = style;//绑定样式

    单元格合并

    //单元格合并
    sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(0,0,0,8));//合拼了A1到I1

    文件的详细信息设置

     //设置文件的详细信息
                DocumentSummaryInformation dsi = PropertySetFactory.CreateDocumentSummaryInformation();
                dsi.Company = "公司名称";//公司
                SummaryInformation si = PropertySetFactory.CreateSummaryInformation();
                si.Subject = "主题";//主题
                hssfworkbook.DocumentSummaryInformation = dsi;
                hssfworkbook.SummaryInformation = si;

    四、Excel文件读取

    //根据路径获取读取xls文件
    HSSFWorkbook wb = new HSSFWorkbook(new FileStream(@"C:UsersYcDesktop ext.xls", FileMode.Open)); //获取sheet对象 ISheet sheet1 = wb.GetSheet("Sheet1");
    //获取行
    IRow row = sheet1.GetRow(0);
    //获取单元格
    ICell cell = row1.GetCell(0);

    读取完毕之后,按需操作内容即可

    PS:最近用上了,想想还是记录一下的好

  • 相关阅读:
    [学习日记]进程、线程和模块
    [学习日记]对SOAP头内添加信息的验证,可实现对请求WEB服务进行身份验证。
    [梦里原创]关于猫和老鼠的问题(程序算法)
    [学习日记]对控件的继承和重载
    [学习日记]VB图像处理之像素的获取和输出
    猫和老鼠问题的讨论
    [音乐欣赏]丁香花
    推荐一个WINDOWS系统文件介绍的网站
    [转]查查在中国有多少人的名字和你一样!
    计算机语言发展图解
  • 原文地址:https://www.cnblogs.com/weimingtian/p/11353140.html
Copyright © 2011-2022 走看看