C#中怎么用NPOI操作Excel
发表于:2024-12-05 作者:千家信息网编辑
千家信息网最后更新 2024年12月05日,这篇"C#中怎么用NPOI操作Excel"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇
千家信息网最后更新 2024年12月05日C#中怎么用NPOI操作Excel
这篇"C#中怎么用NPOI操作Excel"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"C#中怎么用NPOI操作Excel"文章吧。
一.合并单元格
NOPI支持对单元格进行合并,还有单元格格式设置!
注意:
在进行单元格合并时必须先创建单元格
1.合并单元格语句:
sheet.AddMergedRegion(new CellRangeAddress(0, 0, 0, 3));//起始行,终止行,起始列,终止列
2.设置单元格格式:
ICellStyle cellStyle = wk.CreateCellStyle(); //首先建单元格格式 //设置单元格上下左右边框线 cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Hair; //虚线cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thick;//粗线 cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Double;//双线 cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;//细线 //文字水平和垂直对齐方式 cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Left; cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Top; //是否换行 //cellStyle.WrapText = true; //若字符串过大换行填入单元格//缩小字体填充 cellStyle.ShrinkToFit = true;//若字符串过大缩小字体后填入单元格//新建一个字体样式对象IFont font = wk.CreateFont();//设置字体加粗样式font.Boldweight = short.MaxValue;ICell MyCell = sheet.CreateRow(1).CreateCell(1);//创建单元格 MyCell.CellStyle = cellStyle;//赋给单元格 "刚才所创建的单元格格式"
源码:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using NPOI;using NPOI.XSSF.UserModel;using NPOI.SS.UserModel;using NPOI.HSSF.UserModel;using NPOI.HSSF.Util;using NPOI.SS.Util;namespace Excel5{ class Program { static void Main(string[] args) { XSSFWorkbook wk = new XSSFWorkbook(); /*ISheet sheet = wk.CreateSheet("例子"); ICellStyle cellStyle = wk.CreateCellStyle(); //设置单元格上下左右边框线 cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Hair; //虚线cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thick;//粗线 cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Double;//双线 cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;//细线 //文字水平和垂直对齐方式 cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Left; cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Top; //是否换行 //cellStyle.WrapText = true; //若字符串过大换行填入单元格//缩小字体填充 cellStyle.ShrinkToFit = true;//若字符串过大缩小字体后填入单元格//新建一个字体样式对象IFont font = wk.CreateFont();//设置字体加粗样式font.Boldweight = short.MaxValue;ICell MyCell = sheet.CreateRow(1).CreateCell(1);ICell MyCell2 = sheet.CreateRow(0).CreateCell(1); MyCell.CellStyle = cellStyle;//MyCell.SetCellValue("测试格式效果"); using (FileStream fileStream = File.Open("d:\\pratice3.xlsx", FileMode.OpenOrCreate, FileAccess.ReadWrite)) { wk.Write(fileStream); fileStream.Close(); } */ //创建一个Sheet ISheet sheet = wk.CreateSheet("例子"); //在第一行创建行 IRow row = sheet.CreateRow(0); //在第一行的第一列创建单元格 for (int i = 0; i < 10; i++) { ICell cell = row.CreateCell(i); if((i)%4==0) row.CreateCell(i).SetCellValue("测试"); } sheet.AddMergedRegion(new CellRangeAddress(0, 0, 0, 3));//起始行,终止行,起始列,终止列 //row.CreateCell(0).SetCellValue("合并单元格"); using (FileStream fs = File.OpenWrite("d:\\pratice1.xlsx")) { wk.Write(fs);//向打开的这个xls文件中写入并保存。 } //上一篇教程中生成的文件 string Address = "d:\\pratice1.xlsx"; //指明路径 XSSFWorkbook wk2 = null; using (FileStream fs = File.Open(Address, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { //把xlsx文件读入workbook变量里,之后就可以关闭了 wk2 = new XSSFWorkbook(fs); fs.Close(); } using (FileStream fileStream = File.Open("d:\\pratice1.xlsx", FileMode.OpenOrCreate, FileAccess.ReadWrite)) { wk2.Write(fileStream); fileStream.Close(); } Console.WriteLine("OK"); Console.ReadKey(); }
这是两部分代码,由注释分开了,再测试的时候进行自己调整!
注意:
单元格在进行合并时,会默认保存左上角的值!
以上就是关于"C#中怎么用NPOI操作Excel"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
单元
字体
内容
格式
字符
字符串
样式
起始
C#
文件
测试
上下左右
一行
上下
例子
对象
文字
文章
方式
水平
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
周莹演讲网络安全简报
数据库有效性规则定义
u8怎么把账套引入数据库
csgo社区服务器显示vac
普陀区专业软件开发哪家便宜
orcl数据库如何更改网址
服务器2016自动关机
中国社会与经济发展数据库
宇视科技软件开发
数据库中usertype
网络软件开发就业前景
极速安全没有服务器
数据库监听实例
网络安全对职业
外文信息资源数据库有哪些
焦作优逸家网络技术有限公司
数据库注销
软件开发面试常见问题百度云
知识数据库平台
计算机应用好还是网络技术好
安徽统一软件开发价格参考价格
南京尚运网络技术有限公司
数据库怎么删除表中信息
网络安全和网络舆情应急预案
我的世界吃鸡服务器如何进入
武汉科瑞技术网络安全
闵行区推广网络技术
长宁区企业网络技术经验丰富
抚州高性价比服务器哪家公司好
电脑服务器工资