NPOI操作Excel时使用列头来读取数据的方法
首先定义扩展方法:
public static ICell GetCell(this IRow row, string clounmName)
{
IRow firstRow = row.Sheet.GetRow();
for (int i = ; i < firstRow.PhysicalNumberOfCells; i++)
{
if (firstRow.GetCell(i).GetValue() == clounmName)
{
return row.GetCell(i);
}
}
throw new Exception(string.Format("未找到名为\"{0}\"的列头", clounmName));
}
调用:
FileStream fs = new FileStream(fileName, FileMode.Open) IWorkBook workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(fs);
string value = string.Empty; ISheet sheet = workbook.GetSheetAt();
for (int i = ; i < sheet.PhysicalNumberOfRows; i++)
{
value = sheet.GetRow(i).GetCell("数量").GetValue();
}
附:扩展方法的使用:
扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。
//创建自己的静态类
public static class MyExtension
{
//静态方法
public static int Number(this String str)
{
return str.Length;
}
}
class Program
{
static void Main(string[] args)
{
//使用扩展方法
string str = "Hello World";
Console.WriteLine(str.Number());
}
}
NPOI操作Excel时使用列头来读取数据的方法的更多相关文章
- 用NPOI操作EXCEL-锁定列CreateFreezePane()
public void ExportPermissionRoleData(string search, int roleStatus) { var workbook = new HSSFWorkboo ...
- JAVA操作Excel时文字自适应单元格的宽度设置方法
使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...
- C#开发中使用Npoi操作excel实例代码
C#开发中使用Npoi操作excel实例代码 出处:西西整理 作者:西西 日期:2012/11/16 9:35:50 [大 中 小] 评论: 0 | 我要发表看法 Npoi 是什么? 1.整个Exce ...
- 使用NPOI操作Excel文件及其日期处理
工作中经常遇到需要读取或导出Excel文件的情况,而NPOI是目前最宜用.效率最高的操作的Office(不只是Excel哟)文件的组件,使用方便,不详细说明了. Excel工作表约定:整个Excel表 ...
- NPOI操作excel之写入数据到excel表
在上一篇<NPOI操作excel之读取excel数据>我们把excel数据写入了datatable中,本篇就讲如何把datatable数据写入excel中. using System; u ...
- .NET 通过 NPOI 操作 Excel
目录 .NET 通过 NPOI 操作 Excel 第一步:通过 NuGet 获取 NPOI 包并引入程序集 第二步:引入 NPOI 帮助类 第三步:在程序中调用相应的方法对数据进行导出导入操作 将 D ...
- 2.6.2 用NPOI操作EXCEL--设置密码才可以修改单元格内容
2.6.2 用NPOI操作EXCEL--设置密码 有时,我们可能需要某些单元格只读,如在做模板时,模板中的数据是不能随意让别人改的.在Excel中,可以通过“审阅->保护工作表”来完 ...
- NPOI操作Excel辅助类
/// <summary> /// NPOI操作excel辅助类 /// </summary> public static class NPOIHelper { #region ...
- 用NPOI操作EXCEL关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数
2.4.1 用NPOI操作EXCEL关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数 NPOI教程:http://www.cnb ...
随机推荐
- Ajax.ActionLink参数详解
该语法会生成一个a标签,点击a标签会执行一个Ajax请求. 有12个方法重载,下面详解方法中的各项参数: 参数一:linkText string类型 说明:链接显示的文字内容 参数二:actionNa ...
- JDK1.3安装出现/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory Done.
今天是出道以来第一次安装JDK1.3,大学的时候接触的也已是JDK1.4,而且是在Red Hat Enterprise Linux Server release 6.6上,安装JDK1.3是由于软件组 ...
- Oozie-4.0.0-cdh5.3.6搭建
到官网下载安装包 解压并cd到安装目录 解压目录下的 oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz 会自动解压成目录hadooplibs 创建文件夹 libext 将 ...
- linux 安装tomcat中间件
1.首先确认是否已安装jdk.配置好所需要的环境变量,如果未安装好,则需要安装jdk和配置好正确的环境变量. 检查是否安装jdk及环境变量配置:#java -version. 2.如上述安装并配置正确 ...
- CentOS配置Nginx+Tomcat7的多站点支持
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在这之前需要先把Nginx和Tomcat安装好,具体见:<CentOS安装Nginx-1.6.2+安全配置&g ...
- MAC OS X的ACL扩展权限设置
在WEB开发时,网站是以_www的用户运行的,而我在本地是以liuwencan的用户编辑的.这就带来一个问题:如果所有文件属于liuwencan,那么网站运行需要写文件时就因无权限而失败:如果所有文件 ...
- 2016 最佳 Linux 发行版排行榜
2015年,不管在企业市场还是个人消费市场都是 Linux非常重要的一年.作为一个自2005年起就开始使用 Linux的 Linuxer ,我门见证了 Linux在过去十年的成长.2016 Linux ...
- sk_buff 里的len, data_len, skb_headlen
http://blog.csdn.net/kakadiablo/article/details/7948414 struct sk_buff *skb; skb->len 是data长度,包含所 ...
- C语言中结构体赋值问题的讨论
今天帮师姐调一个程序的BUG,师姐的程序中有个结构体直接赋值的语句,在我印象中结构体好像是不能直接赋值的,正如数组不能直接赋值那样,我怀疑这个地方有问题,但最后证明并不是这个问题.那么就总结一下C语言 ...
- linux学习(2)
自从安装了虚拟机和各种工具软件之后,学习Linux的过程不断被打断,一直想把Ubuntu烧录到itop4412开发板里面去,却总是失败,感觉这个过程都加强我的抗打击能力了,现在来说说,对于一个第一次烧 ...