一个关于字符串的统计的问题? 有是做字符串处理,先给个拆分成单个的方法:string[] strArray=myTest.Split(';'); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 现在有一个这样的字符串:string sStr= "03D,20 ; 03E,30 ; 03F,40 ; 03D,40 ; 03G,5 ; 03G,3"这里面有两个03D,则统计为一个03D,后面的数量相加为:60还有两个03G,则统计为一个03G,后面的数量相加为:8统计为string sStr= "03D,60 ; 03E,30 ; 03F,40 ; 03G,8"就是以分号相隔,如果逗号前的字符串相同,则后面的数值相加希望大家写一个通用的能够解决这个问题的方法,谢谢!!! string[] strArray=myTest.Split(';');//分开用数组存放然后对数组循环,取出前三位相同的strArray[i].subString(0,2),再strArray[i].subString(4,2)相加,从并从中去掉上述处理的数据,再循环下去... string sStr = "03D,20;03E,30;03F,40;03D,40;03G,5;03G,3";string[] values = sStr.Split(';');Hashtable table = new Hashtable();for( int i=0;i<values.Length;i++ ){ string[] keyAndValue = values[i].Split(','); if( table.Contains(keyAndValue[0]) ) { int value = (int)table[keyAndValue[0]]; value += int.Parse( keyAndValue[1] ); table[keyAndValue]=value; } else table.Add( keyAndValue[0],int.Parse(keyAndValue[1]) );}sStr = string.Empty;foreach( DictionaryEntry entry in table ) sStr += ";"+entry.Key+","+entry.Value;sStr = sStr.Remove(0,1);//去掉第一个";" 谁有在vs中成功调用过sqlserver2005的报表服务器? 请教模拟鼠标单击时无法返回的问题 int?与int 读取注册列表无法GetValueNames() 二维坐标和三维坐标能不能互译? ie 不能调试 DataGrid绑定DataSet的问题。 求C#大神速速来解~~~~~~~~~~~~ 关于数据的检索问题!! 怎样在一个datatable中显示不同性质的两行数据? 初学者,C#与数据库,求程序,最简的。 软件工程---关于"智能家居"管理系统,谁能给些这方面的资料?急急急..
string sStr= "03D,20 ; 03E,30 ; 03F,40 ; 03D,40 ; 03G,5 ; 03G,3"
这里面有两个03D,则统计为一个03D,后面的数量相加为:60
还有两个03G,则统计为一个03G,后面的数量相加为:8统计为string sStr= "03D,60 ; 03E,30 ; 03F,40 ; 03G,8"
就是以分号相隔,如果逗号前的字符串相同,则后面的数值相加希望大家写一个通用的能够解决这个问题的方法,谢谢!!!
然后对数组循环,取出前三位相同的strArray[i].subString(0,2),再strArray[i].subString(4,2)相加,从并从中去掉上述处理的数据,再循环下去...
{
string[] keyAndValue = values[i].Split(',');
if( table.Contains(keyAndValue[0]) )
{
int value = (int)table[keyAndValue[0]];
value += int.Parse( keyAndValue[1] );
table[keyAndValue]=value;
}
else
table.Add( keyAndValue[0],int.Parse(keyAndValue[1]) );
}sStr = string.Empty;foreach( DictionaryEntry entry in table )
sStr += ";"+entry.Key+","+entry.Value;sStr = sStr.Remove(0,1);//去掉第一个";"