【问题标题】:how to print Datatable with header in C# console application?如何在 C# 控制台应用程序中打印带有标题的 Datatable?
【发布时间】:2018-03-25 06:12:32
【问题描述】:

我正在读取 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();

【问题讨论】:

标签: c# csv datatable console-application


【解决方案1】:

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

    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) ;
    }

【讨论】:

  • 简单实用,谢谢!
【解决方案2】:

向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[行索引][列索引]

或者如果你知道列名

table.rows[行索引][列名]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 2023-01-03
    • 2010-11-25
    • 1970-01-01
    • 1970-01-01
    • 2018-07-28
    相关资源
    最近更新 更多