我读了《如何读取单个Excel单元格值》,并亲自尝试了一下。但是当我到达string s = (myExcelWorkSheet.Cells[3, "E"] as Excel.Range).Value2.ToString();一切都终止了,并显示了表格。//Everything worked fine here.string s = (myExcelWorkSheet.Cells[3, "E"] as Excel.Range).Value2.ToString();//Everything after this was all skipped!为什么会这样,我该如何解决?
2 回答
三国纷争
TA贡献1804条经验 获得超7个赞
读取excel单元的问题在于,如果其中没有任何内容,则该单元对象为Null。因此,它既没有也.Value2没有.Value。
要找到一种避免检查的方法Null,可以使用Convert.ToString()将求值为Null空字符串,从而不返回错误的方法:
for (int i = 1; i < 5; i++)
{
string a = Convert.ToString(wk.Cells[i, 1].Value2);
Console.WriteLine(a);
}
桃花长相依
TA贡献1860条经验 获得超8个赞
当单元格具有值时,您需要使用ToString()
。
而当电池不具有价值,那么你并不需要的ToString()
!
否则,整个程序将跳出,之后的所有内容将永远不会执行!!!
因此,我想这只是系统是否尝试将空值转换为字符串的问题!!!
- 2 回答
- 0 关注
- 180 浏览
添加回答
举报
0/150
提交
取消