Czy ktoś może mi pomóc, jak uzyskać dostęp na przykład do wartości pierwszej komórki w czwartej kolumnie?
a b c d
1 2 3 5
g n m l
na przykład, jak uzyskać dostęp do wartości d, jeśli byłoby to datatable?
Dzięki.
źródło
Czy ktoś może mi pomóc, jak uzyskać dostęp na przykład do wartości pierwszej komórki w czwartej kolumnie?
a b c d
1 2 3 5
g n m l
na przykład, jak uzyskać dostęp do wartości d, jeśli byłoby to datatable?
Dzięki.
Jeśli potrzebujesz słabego odniesienia do wartości komórki:
object field = d.Rows[0][3]
lub
object field = d.Rows[0].ItemArray[3]
Powinienem to zrobić
Jeśli potrzebujesz odwołania o jednoznacznie określonym typie (w Twoim przypadku ciąg znaków), możesz użyć metody rozszerzenia DataRowExtensions.Field :
string field = d.Rows[0].Field<string>(3);
(upewnij się, że System.Data znajduje się na liście w przestrzeniach nazw w tym przypadku)
Indeksy są oparte na 0, więc najpierw uzyskujemy dostęp do pierwszego wiersza (0), a następnie czwartej kolumny w tym wierszu (3)
Możesz także spróbować (pierwsza komórka w czwartej kolumnie):
dt.Rows[0][3]
dane d znajdują się w wierszu 0 i kolumnie 3 dla wartości d:
DataTable table;
String d = (String)table.Rows[0][3];
public V[] getV(DataTable dtCloned)
{
V[] objV = new V[dtCloned.Rows.Count];
MyClasses mc = new MyClasses();
int i = 0;
int intError = 0;
foreach (DataRow dr in dtCloned.Rows)
{
try
{
V vs = new V();
vs.R = int.Parse(mc.ReplaceChar(dr["r"].ToString()).Trim());
vs.S = Int64.Parse(mc.ReplaceChar(dr["s"].ToString()).Trim());
objV[i] = vs;
i++;
}
catch (Exception ex)
{
//
DataRow row = dtError.NewRow();
row["r"] = dr["r"].ToString();
row["s"] = dr["s"].ToString();
dtError.Rows.Add(row);
intError++;
}
}
return vs;
}
int number = dt.Rows[i].Field<int>(j);