我是这样写的 但是最后的和不对!郁闷!!!!! DataTable temp = new DataTable(); DataColumn coldc1 = new DataColumn();
coldc.ColumnName = "dc";
temp.Columns.Add(coldc1);
DataColumn coldqcl1 = new DataColumn("dqcl", typeof(System.Double));
temp.Columns.Add(coldqcl1);
DataColumn colmax1 = new DataColumn("max", typeof(System.Double));
temp.Columns.Add(colmax1);
DataColumn colmin1 = new DataColumn("min", typeof(System.Double));
temp.Columns.Add(colmin1);
DataColumn colgrl1 = new DataColumn("grl", typeof(System.Double));
temp.Columns.Add(colgrl1);
DataColumn colclmax1 = new DataColumn("clmax", typeof(System.Double));
temp.Columns.Add(colclmax1);
DataColumn colclmin1 = new DataColumn("clmin", typeof(System.Double));
temp.Columns.Add(colclmin1); int nI = 0;
double vl1 = 0,vl2=0,vl3=0,vl4=0,vl5=0,vl6=0;
string str = dt.Rows[0]["dc"].ToString();
DataRow row1 = null; while (nI != dt.Rows.Count)
{
row1 = temp.NewRow(); vl1 = double.Parse(dt.Rows[nI]["dqcl"].ToString());
vl2 = double.Parse(dt.Rows[nI]["max"].ToString());
vl3 = double.Parse(dt.Rows[nI]["min"].ToString());
vl4 = double.Parse(dt.Rows[nI]["grl"].ToString());
vl5 = double.Parse(dt.Rows[nI]["clmax"].ToString());
vl6 = double.Parse(dt.Rows[nI]["clmin"].ToString()); if (str == dt.Rows[nI]["dc"].ToString())
{ vl1 +=vl1;
vl2 +=vl2;
vl3 +=vl3;
vl4 += vl4;
vl5 += vl5;
vl6 += vl6;
}
else
{
//row1 = temp.NewRow(); row[0] = str;
row[1] = vl1;
row[2] = vl2;
row[3] = vl3;
row[4] = vl4;
row[5] = vl5;
row[6] = vl6; row1[0] = str;
row1[1] = vl1;
row1[2] = vl2;
row1[3] = vl3;
row1[4] = vl4;
row1[5] = vl5;
row1[6] = vl6; str = dt.Rows[nI]["dc"].ToString(); if (row1 != null)
{
temp.Rows.Add(row1);
vl1 = 0;
vl2 = 0;
vl3 = 0;
vl4 = 0;
vl5 = 0;
vl6 = 0;
}
}
nI++;
}
dt = temp;
dt.Columns[0].ColumnName = "dc";
解决方案 »
- bugfree是否适用于asp.net啊?如果不适用那asp.net用什么工具来管理bug?
- 做一个页面收发邮件的.NET网站如何入手
- Url重写再发一帖,解决两帖都给分.(刚那边问题可能描述不清)
- 开发继承自HyperLink控件的自定义控件的问题.
- asp.net如何实现ftp帐号管理
- 为什么在我单击页面上的一个按钮后,先执行了 Page_Load 事件?而不是按钮的 Click 事件?
- asp.net能不能读取lotus中的数据呀
- 圣诞散分!
- 请问使用CDO组件要多少版本的。NET FRAMEK才支持,急急!!!!!
- 为什么Web Form上放上去的TreeView控件调试运行时不显示
- ASP的连接数据库字符串,一般写在那啊?
- 为什么我的ASP显示无法打开?
你这样不是累加如果想累加 要再定义6个值 sum1,,sum6
然后if(..)
{
sum1 += vl1;
..
}
else
{
}你现在这样写 等于是 每次循环进来 你都将vl1重新附了次值,之前的和被冲掉了
然后if(true) vl1+=vl1; 等于是将这一行数据的这一列值乘以2了
所以最后的合计值 是最后一次为真的数据的2倍
不是所有的合计
A厂 0 1984 467 1887 495 1842
A厂 774 1417 258 1015 2401 1457
B厂 434 2594 511 2664 125 1046
B厂 318 682 2213 1052 2472 2703 现在就要把都同样厂的合并起来 达到以下效果 厂 a b c d e f
A厂 总和 总和 总和 总和 总和 总和
B厂 总和 总和 总和 总和 总和 总和
以此类推,两个循环就能达到你要的结果。