ibcadmin 发表于 2019-8-14 18:46:44

使用NPOI进行Excel操作

<p>一、NPOI组件导入</p>
<p>右键项目菜单,“管理NuGet程序包”</p>
<p><div align="center"></div></p>
<p>直接搜索“NPOI”即会出现列表,下载第一个进行安装即可</p>
<p><div align="center"></div></p>
<p>安装完成后项目引用会出现以下几项</p>
<p><div align="center"></div></p>
<p>二、基础使用</p>
<p>添加引用</p>

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

<p>Excel操作开始</p>

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

<p>文件导出</p>

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

<p>三、样式及单元格操作</p>

//设置列宽(字符宽度)
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;//获取单元格对象
            cell.CellStyle = style;//绑定样式

<p>单元格合并</p>

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

<p>文件的详细信息设置</p>

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

<p>四、Excel文件读取</p>

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

<p>读取完毕之后,按需操作内容即可</p>
<p>PS:最近用上了,想想还是记录一下的好</p><br>来源:<a href="https://www.cnblogs.com/weimingtian/p/11353140.html" target="_blank">https://www.cnblogs.com/weimingtian/p/11353140.html</a>

CLRSCR 发表于 2019-8-30 16:31:07

{:2_27:}
页: [1]
查看完整版本: 使用NPOI进行Excel操作