c# - 用 ac# 数据表的第一行覆盖列标题
问题描述
我想知道是否存在一种有效的方法来首先覆盖a的column
标题datatable
row
为了说明我的观点,假设一个有,作为一个样本datatable
Column 0 Column 1 Column 2
--------------------------
x1 x2 x3
事实上,它可以使用
dataTable.Columns["Column 0"].ColumnName = "x1"
;
dataTable.Columns["Column 1"].ColumnName = "x2"
; 等等
dataTable.AcceptChanges()
;
但是,不可否认,如果处理50
或,此手动更新将变得低效100
headers
。
提前致谢。
解决方案
您可以使用以下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using System.Data;
namespace Rextester
{
public class Program
{
public static void Main(string[] args)
{
//Your code goes here
Console.WriteLine("Hello, world!");
DataTable table = new DataTable();
table.Columns.Add("Dosage", typeof(int));
table.Columns.Add("Drug", typeof(string));
table.Columns.Add("Patient", typeof(string));
//table.Columns.Add("Date", typeof(DateTime));
// Here we add five DataRows.
table.Rows.Add(25, "Indocin", "David");
table.Rows.Add(50, "Enebrel", "Sam");
table.Rows.Add(10, "Hydralazine", "Christoff");
table.Rows.Add(21, "Combivent", "Janet");
table.Rows.Add(100, "Dilantin", "Melanie");
if(table.Rows.Count > 0)
{
for(int i = 0; i < table.Columns.Count; i++){
string columnName = Convert.ToString(table.Columns[i]);
table.Columns[columnName].ColumnName = Convert.ToString(table.Rows[0][i]);
}
}
for(int i = 0; i < table.Columns.Count; i++){
Console.WriteLine(table.Columns[i]);
}
}
}
}
推荐阅读
- c# - C# 中的 Web Scraping 无法按预期工作
- arrays - 这个函数的返回值是什么
- python - 无法使用 selenium 从页面中名为“heading”的每个类中获取数据
- asp.net-mvc - 首先生成下拉asp.net mvc代码
- javascript - JS 字符串字面量
- javascript - 为什么空数组通过 if(array !== []) 检查
- sql - mariadb json中正确使用json_table
- python - 使用 python-crontab 的多个作业
- python - Flask URL 像这样“/api/hello”工作,但不像这样“/api/hello/”
- regex - 匹配浮点数或整数的正则表达式,可以是正数或负数