[英]print an entire table in 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]
作為適當的列。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.