c#中怎样获取datatable中某个单元的值?

加入我的一个datatable的第二行第三列的值是3,我怎样把它取出来转换成int型
我试了Convert.ToInt32(dt.Rows[1].ItemArray[2]) 怎么显示一个异常未将对象的引用设置为对象的实例。

第1个回答  2009-11-20
首先你要确定你的DataTable 里面是有数据的

我不知道你的 Table里面是什么样的数据··ItemArray 返回 object [] 数组

你拿一个object 数组 去 Convert.toInt32()
你不报错我到觉得奇怪了 ··
如果是业务需要··那就要另外来写 toInt32() 对你的需要行不通
他只返回一个数字 而不是 int数组!

一般拿个Convert.toInt32(dt.Rows[1][2]) 就是这样了!
第2个回答  2009-11-20
DataTable data = new DataTable("user");
data.Columns.Add("name",typeof(string));//添加一列
data.Columns.Add("pwd", typeof(string));//添加一列
DataRow row = data.NewRow();//新建一行
row["name"] = "a";
row["pwd"] = "123";
DataRow row1 = data.NewRow();
row1["name"] = "b";
row1["pwd"] = "234";
data.Rows.Add(row);
data.Rows.Add(row1);
Response.Write(data.Rows[1][1]);
输出的结果是第二行的234
第3个回答  推荐于2016-08-17
Convert.ToInt32(dt.Rows[1].ItemArray[2])

行标是从0开始的,也就是Rows[0]表示第一行。本回答被提问者采纳
第4个回答  2009-11-20
搞笑!Convert.ToInt32(dt.tables["表名"].Rows[1][2])

懂?新手乱来
第5个回答  2009-11-20
直接 int i=(int)(dt.Rows[1][2])
就行了
相似回答