请问为什么我用C#使用NPOI读取excel数据第一遍没有问题,第二遍就报空指针异常了?

项目启动第一次执行程序读取excel一切正常,第二再执行时读取到时间格式的内容就就报错了(如下图1),如果我把exel中的日期格式内容清除或者修改格式为文本就不会报错,但是读取到的内容为null。大神帮帮忙,这个问题困扰了我很久,毕设做到这里被卡了一个多星期,有酬回答。

如果第2遍就会爆空投的话,那么可能是因为你使用的这个Excel的时候是错误的,所以的话才会导致这样。
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-10-11
对于日期来说你要先判断是否是日期类型
string value="";

if (cell.CellType == CellType.Numeric && DateUtil.IsCellDateFormatted(cell))
value= cell.DateCellValue.ToString("yyyy/MM/dd");
else

value=cell.ToString()本回答被网友采纳

请问为什么我用C#使用NPOI读取excel数据第一遍没有问题,第二遍就报...
如果第2遍就会爆空投的话,那么可能是因为你使用的这个Excel的时候是错误的,所以的话才会导致这样。

npoI读取excel出现乱码怎么办?
因为NPOI版本有问题所造成的,通过适当更正参数以后能处理。情况如下:直接将hssfCellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER)修改为hssfCellStyle.setAlignment(HorizontalAlignment.CENTER)即可。相关明细 NPOI是指构建在POI 3.x版本之上的一个程序,作为一个开源的C#读写Excel、WORD等微软OLE2组件文档的...

求教NPOI的高手,C#用NPOI导出Excel出现乱码
字符编解码的问题吧。这样试试:string name = Encoding.UTF8.GetString(Encoding.Default.GetBytes("姓名"));headerRow.CreateCell(0, CellType.String).SetCellValue(name);

C#开发NPOI生成excel2007(.xlsx格式)表格时候总是提示发现不可读取的...
C#开发NPOI生成excel2007(.xlsx格式)表格时候总是提示发现不可读取的内容是设置错误造成的,解决方法为:1、首先打开一个可用的Excel文件,然后点击【文档】。2、然后点击【打开】,点击【浏览】,如下图所示。3、保存到桌面【另存为】-【计算机】-【桌面】。4、输入文件名,点击保存。5、Excel就可以...

C#用NPOI读取Excel数据到数据库中行的顺序乱怎么办?
这里可以直接在vs程序中引入Spire.Xls.dll这一个dll程序集文件就可以实现数据的导入导出了。可以直接在NuGet中搜索安装,以下是导入excel数据到datatable的代码方法:\/\/创建Workbook对象并加载Excel文档 Workbook workbook = new Workbook();workbook.LoadFromFile(@"F:\\ExportData.xlsx" ,ExcelVersion.Version...

C# winfrom中NPOI操作EXCEL
3. 在代码中引入必要的命名空间:`using NPOI.HSSF.UserModel;`,`using NPOI.SS.UserModel;`和`using NPOI.XSSF.UserModel;`。当你的Winform项目设置完毕后,你可以在npoi.cs文件中编写具体的导入和导出代码。为了获取源码,你可以访问百度网盘链接:[pan.baidu.com\/s\/1dd3Ltk...](pan.baidu.com\/...

C#中将Excel表导入到数据库中。现在想要一个写好的类,我在按钮的单击事...
1》读EXCEL, 遍历sheet ,拿到sheet名 当做表名,2》读某个sheet,第一行遍历单元格,当做表头,SQL建表。3》循环第二列到最后一列,挨个取值,然后insert到数据库里对应的表对应的列。但是由于EXCEL的随意性,有很多问题是无法解决的,比如数据的类型,是否可空,是否违反已有的约束,等等等,会导致...

C#使用 POI 实现对Excel表格进行数据
C#中的NPOI库是一个强大的工具,它是POI开源项目专为.NET平台设计的,其功能涵盖了Excel、Word和PPT文件的读写操作。NPOI的兼容性非常广泛,几乎支持所有Office 97-2003版本的文件格式,特别在处理Excel数据时,无论是xls格式还是xlsx格式,NPOI都能得心应手。通过NPOI,开发人员可以方便地与Excel表格进行...

c# excel 用npoi怎么获取cell的坐标
用CellReference.FormatAsString()可以获得它的坐标,我写了一个扩展方法,你可以参考一下 public static class NpoiExtensions{ \/\/\/ \/\/\/ 获得单元格的坐标名称 \/\/\/ \/\/\/ \/\/\/ <returns><\/returns> public static string GetCellReference(this ICell cell) { var cell...

c#将数字插入excel后,出现以文本形式存储的数字,你解决没有
我在使用C#(软件VS),使用NPOI方式处理excel表格,当我把数据插入excel的单元格(row_date.GetCell(j).SetCellValue(dataGridView1[j, i - 1].Value.ToString() 此函数是直接写入值),打开EXCEL后,对应单元格出现“以文本形式存储的数字”提示;我改变输入方式为( row_date.GetCell(j).SetCell...

相似回答