解决方案 »
- C#操作Excel
- group by 之前如何取count(id) 为零的记录
- 请教各位一个汉字转换的问题?
- 新手 求助(为什么用外连接 执行的select 语句 返回的结果 在用SqlDataReader.read()控制循环时出现错误)
- 怎么访问这个函数
- GetDynamicObject() 怎么用?
- 如何将DATAGRID中的某列将1显示为选择一
- 哪位大神能告诉我!C#的事件和WPF的路由事件 有什么关系嘛?
- .Net中控件的集合属性如listview的items和datagrid的tablestyle是如何实现的?
- 【C#】我正在做个象棋小程序,但是不知道怎么传输数据
- 急!!!command.ExecuteScalar()的问题
- 那个reset重置的代码
dataList[i].Add(float.Parse(drss[0].ToString()));
->
dataList[i].Add(Convert.ToSingle(drss[0]));
{
sql="select * from table";
cmd=new sqlcommand(sql,myconn);
dr=cmd.ExecuteReader();
while(dr.Read())
{
if(dataList[i] == null){ dataList[i] = new List<float>(); }
dataList[i].Add(float.Parse(dr[0].ToString()));
}
}
这之后每一个List<float>,就是dataList[i],使用前是不是也需要先new?
但是调试中发现问题不是出在dataList[i]是否有分配空间(即dataList[i]=new List<float>();)
错误在于dataList[0]就超出索引范围,难道是List<List<float>> dataList = new List<List<float>>(43);没有给dataList分配43个空间?
你应该循环添加 43 次 new List<float>!真的很别扭,为什么不用 float[][] 锯齿数组,或者 List<float>[] dataList = new List<float>[43] 也行啊。