用C#打印整个表格



我正在尝试打印DataTable的内容,从列标题开始,然后是表元组的内容。

output.Add($"Table : [{dataTable.TableName}]");
string strColumnNames = "";
foreach (DataColumn col in dataTable.Columns)
{
if (strColumnNames == "")
strColumnNames = col.ColumnName.PadLeft(col.MaxLength - col.ColumnName.Length);  // (*)
else strColumnNames = strColumnNames + "|" + 
col.ColumnName.PadLeft(col.MaxLength - col.ColumnName.Length);  // (*)
}
output.Add($"[{strColumnNames}]");

foreach (DataRow dataRow in dataTable.Rows)
{
string temp = "";
for (int i = 0; i < dataRow.ItemArray.Count(); i++)
{
if (i == 0)
temp = dataRow.ItemArray[i].ToString();                          // (**)
else temp += "|" + dataRow.ItemArray[i].ToString();                  // (**)
}
output.Add($"[{temp}]");
}

该代码中的(*)部分使用DataColumn的最大长度的MaxLength属性,以获得类似列的输出。

我想在(**)部分中也这样做,但我不知道如何从dataRow对象开始访问相应的DataColumn

有人有主意吗
提前感谢

您已经有了可用的dataTable实例。dataTable.Columns[i]应为您提供适当的DataColumn

Datatable已在此处实例化。如果要打印数据列,则应为相应的列使用dataTable.Column[i]

相关内容

  • 没有找到相关文章

最新更新