如何在C#控制台应用程序中打印带有标题的Datatable?

时间:2018-03-25 06:12:32

标签: c# csv datatable console-application

我正在阅读csv文件数据,并希望在控制台应用程序中打印数据表。

请告诉我该怎么做。以下是我现有的代码。

  string csv_file_path = @"C:\Users\files\LP.csv";
  DataTable csvData = GetDataTabletFromCSVFile(csv_file_path);
  //Console.WriteLine(csvData);

  foreach (DataRow row in csvData.Rows)
  {
       Console.WriteLine();
       // ... Write value of first field as integer.
  }
  Console.ReadLine();

2 个答案:

答案 0 :(得分:0)

向C#指定您想要获取的参数

string csv_file_path = @"C:\Users\files\LP.csv";
DataTable csvData = GetDataTabletFromCSVFile(csv_file_path);

foreach(DataRow row in csvData.Rows)
 { 
     string name = row["name"].ToString();
     string description = row["description"].ToString();
     string icoFileName = row["iconFile"].ToString();
     string installScript = row["installScript"].ToString();
 }

Console.ReadLine();

如果您需要从每行提取数据,那么您可以使用

  

table.rows [rowIndex位置] [columnindex]

或者,如果您知道列名称

  

table.rows [rowIndex位置] [COLUMNNAME]

答案 1 :(得分:0)

我创建了一个小的方法,可以打印任何数据表(可以改进)

    public static void printDataTable(DataTable tbl)
    {
        string line = "";
        foreach (DataColumn item in tbl.Columns)
        {
            line += item.ColumnName +"   ";
        }
        line += "\n";
        foreach (DataRow row in tbl.Rows)
        {
            for (int i = 0; i < tbl.Columns.Count; i++)
            {
                line += row[i].ToString() + "   ";
            }
            line += "\n";
        }
        Console.WriteLine(line) ;
    }