问题描述
for(inti=0;i<rownum;i++){k=i%5;switch(k){case0:j++;CiHui[0,k,j]=dt.Rows[i]["Ciyu"].ToString();CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(dt.Rows[i]["Ciyu"].ToString(),3);//这是一个static方法break;default:CiHui[0,k,j]=dt.Rows[i]["Ciyu"].ToString();CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(dt.Rows[i]["Ciyu"].ToString(),3);break;}progressBar1.Value=i;}
解决方案
解决方案二:
dt.Rows[i]["Ciyu"]这种少用dt.Rows[i][1]用这种。其中1代表第二列。你的看看Ciyu这是第几列。
解决方案三:
改了,速度还是没有提高。。。。。但还是谢谢你
解决方案四:
for(inti=0;i<rownum;i++){stringstr=dt.Rows[i]["Ciyu"].ToString();k=i%5;switch(k){case0:j++;CiHui[0,k,j]=str;CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(str,3);//这是一个static方法break;default:CiHui[0,k,j]=str;CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(str,3);break;}progressBar1.Value=i;}还是没反印的话。是你PinyinManager这方法的问题。
解决方案五:
for(inti=0;i<rownum;i++){stringstr=dt.Rows[i]["Ciyu"].ToString();k=i%5;switch(k){case0:j++;CiHui[0,k,j]=str;CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(str,3);//这是一个static方法break;default:CiHui[0,k,j]=str;CiHui[1,k,j]=Pinyin.PinyinManager.Pinyin(str,3);break;}//progressBar1.Value=i;这个去掉。或者用异步。线程委托。}