【问题标题】:Get specific column from Data Table C#从数据表 C# 中获取特定列
【发布时间】:2014-04-04 16:48:51
【问题描述】:

我有一个从某个 excel 文件中获取值的数据表。我使用按钮作为文件对话框,在文件系统中的某处找到文件,然后在那里解析所需的值。 稍后在应用程序中,我只需要该数据表中的一列。它是附图片上名为max t 的列。 下面是我用来从文件中获取值的代码:

  string pathConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties=\"Excel 8.0;HDR=Yes;\";";
  OleDbConnection connection = new OleDbConnection(pathConnection);
  OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("Select * from [DAYTIME CONFORT INDEX$]", connection);

  DataTable dt = new DataTable();
  myDataAdapter.Fill(dt);
  myDataGridView.DataSource = dt;

正如您在图片中看到的那样,我的专栏很少,但只需要其中一些。例如,我需要将 max t 列中的值获取到一些双精度列表中。 我尝试了几件事,但没有一个没有奏效。由于我是初学者,因此有人可以用最简单的方法帮助我。 谢谢你。 :)

【问题讨论】:

    标签: c# excel list datatable


    【解决方案1】:

    列出查询中需要的列。例如。仅获取 Mmax t 列:

    "Select [M],[max t] from [DAYTIME CONFORT INDEX$]"
    

    【讨论】:

    • 感谢您的快速回复。不知道我能做到。马上试试:)
    【解决方案2】:

    这将为您提供数据表中 max t 列中的数组值

    DataView view = new DataView(dt);
    DataTable distinctValues = view.ToTable(true, "max t");
    DataRow[] myRows = distinctValues.Select();
    

    【讨论】:

    • 感谢您的回复,我会尝试我得到的两个答案,我会看看哪个更适合我:D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-22
    • 1970-01-01
    • 2014-05-16
    • 1970-01-01
    相关资源
    最近更新 更多