gpt4 book ai didi

c# - 无法对空引用执行运行时绑定(bind) - 空 Excel 单元格

转载 作者:太空狗 更新时间:2023-10-29 17:29:42 26 4
gpt4 key购买 nike

我似乎想不出一种方法来纠正标题中提到的错误,并且正在寻找一些关于应该做什么的想法。

我正在尝试将 Excel 电子表格的行读入一个对象。

第一次循环我没有遇到任何问题,因为第 1 行、第 1 列和第 1 行第 2 列中有数据。

但是当它到达第 2 行、第 1 列和第 2 行第 2 列时,它会因上述错误而失败,因为电子表格中的那些单元格是“空的”

我只是不知道在哪里可以放置一些“if null”检查。

有人可以建议怎么做吗?

这是我的代码...

private static void IterateRows(Excel.Worksheet worksheet)
{
//Get the used Range
Excel.Range usedRange = worksheet.UsedRange;

// create an object to store the spreadsheet data
List<SPREADSHEETModel.spreadsheetRow> spreadsheetrows = new List<SPREADSHEETModel.spreadsheetRow>();

//Iterate the rows in the used range
foreach (Excel.Range row in usedRange.Rows)
{
for (int i = 0; i < row.Columns.Count; i++)
{
spreadsheetrows.Add(new SPREADSHEETModel.spreadsheetRow()
{
col1 = row.Cells[i + 1, 1].Value2.ToString(),
col2 = row.Cells[i + 1, 2].Value2.ToString()
});
}
}
}

最佳答案

不要使用.ToString() 当值为null 时会导致null reference exception。使用 Convert.ToString(),它将为空值返回空字符串。

col1 = Convert.ToString(row.Cells[i + 1, 1].Value2);
col2 = Convert.ToString(row.Cells[i + 1, 2].Value2);

关于c# - 无法对空引用执行运行时绑定(bind) - 空 Excel 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28235162/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com