C# datatable从行中获取特定列
我有以下资料:C# datatable从行中获取特定列,c#,datatable,C#,Datatable,我有以下资料: //a datatable with some rows and columns lets say 5x5 var datatable = new DataTable(); var numberofrows = datatable.rows.count; for (int i = 0; i < numberofrows; i++) { //for each row, get the 3rd column var cell = datatable.rows[i].??
//a datatable with some rows and columns lets say 5x5
var datatable = new DataTable();
var numberofrows = datatable.rows.count;
for (int i = 0; i < numberofrows; i++) {
//for each row, get the 3rd column
var cell = datatable.rows[i].???
}
//包含一些行和列的数据表可以是5x5
var datatable=新的datatable();
var numberofrows=datatable.rows.count;
for(int i=0;i
如何获得每行的第三列?第三列
var cellValue = datatable.Rows[i][2];
更好的是,如果你知道列名
var cellValue = datatable.Rows[i]["column_name"];
您可以遍历datatable并获取每一行,这可以看作是一个数组,因此您可以使用索引(也可以使用列的名称而不是索引,即:row[“column3 name”])来拾取该特定行的每个元素
如果表包含两列“属性”和“值”。可以按如下方式插入内容
table.Columns.Add("Property", typeof(string));
table.Columns.Add("Value", typeof(string));
table.Rows.Add("P1", "abc");
table.Rows.Add("P2", "xyz");
检索特定列的内容
foreach (DataRow row in table.Rows)
{
if (row["Property"].ToString() == "P1")
{
var value = row["Value"].ToString();
}
}
我们可以像这样读取特定列的值
foreach (DataTable table in ds.Tables)
{
if (table.TableName == "Table1")
{
for (int j = 0; j < table.Rows.Count; j++)
{
int a = Convert.ToInt32( table.Rows[j].ItemArray[3]);
int b = Convert.ToInt32(table.Rows[j].ItemArray[4]);
}
}
}
foreach(ds.Tables中的数据表)
{
如果(table.TableName==“Table1”)
{
对于(int j=0;j
单元格的数据类型是什么?我需要用它来代替'var',这样我就可以得到value@AbdulAhmad,这取决于列的类型。当您创建列(在datatable.Columns.Add(..)中添加列)时,您会重载指定类型。我明白了,好的,我会查看它谢谢您,但我不想使用foreach循环,因为我想根据索引跳过一些行
foreach (DataTable table in ds.Tables)
{
if (table.TableName == "Table1")
{
for (int j = 0; j < table.Rows.Count; j++)
{
int a = Convert.ToInt32( table.Rows[j].ItemArray[3]);
int b = Convert.ToInt32(table.Rows[j].ItemArray[4]);
}
}
}