c# 去除datatable 空白行
时间: 2024-11-06 18:11:19 浏览: 17
C# datatable删除多行
5星 · 资源好评率100%
在 C# 中,DataTable 是一个用于存储表格数据的数据结构,有时候可能会包含空白行或只有空值的行。要去除 DataTable 中的空白行,你可以按照以下步骤操作:
1. 遍历 DataTable 的每一行:
```csharp
foreach (DataRow row in dataTable.Rows)
{
// 检查当前行是否所有列的值都为空
if (!row.ItemArray.Any(field => field != DBNull.Value && string.IsNullOrEmpty(field.ToString())))
{
// 如果不是空白行,则保留
}
else
{
// 如果是空白行则移除
dataTable.Rows.Remove(row);
}
}
```
2. 使用 Linq 进行简化处理:
```csharp
var nonEmptyRows = dataTable.AsEnumerable()
.Where(row => !row.ItemArray.All(field => field is DBNull || string.IsNullOrWhiteSpace(field.ToString())));
dataTable.Clear();
dataTable.Load(nonEmptyRows.CopyToDataTable());
```
这将只保留那些非空白行,并替换掉原始的 DataTable。
阅读全文