最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 利用StringBuilder提升字符串拼接性能的小例子

 更新時(shí)間:2013年07月04日 15:18:09   作者:  
一個(gè)項(xiàng)目中有數(shù)據(jù)圖表呈現(xiàn),數(shù)據(jù)量稍大時(shí)顯得很慢,在使用了StringBuilder后效果提升很明顯,下面有例子

用Stopwatch分段監(jiān)控了一下,發(fā)現(xiàn)耗時(shí)最多的函數(shù)是SaveToExcel

此函數(shù)中遍列所有數(shù)據(jù)行,通過Replace替換標(biāo)簽生成Excel行,然后將行數(shù)據(jù)累加賦值到一個(gè)字符串

復(fù)制代碼 代碼如下:

string excelString = "";
foreach(var item in list){
        excelString += string.Format("<row>....{0}</row>",list.Title);
}

看到這。。立馬想起無數(shù)先烈們的警告、字符串拼接的內(nèi)存操作原理等等。于是大手一揮,代碼全刪,改為如下形式
復(fù)制代碼 代碼如下:

string excelString = new StringBuilder();
foreach(var item in list){
      excelString.AppendFormat("<row>......{0}</row>",list.Title);
}

再次測(cè)試,效率立馬提升了幾十倍。之前8000行需要30s,現(xiàn)在只需要2s

相關(guān)文章

最新評(píng)論

介休市| 莒南县| 会宁县| 大同县| 石棉县| 昌图县| 东安县| 乌鲁木齐县| 兴业县| 徐水县| 开封市| 三原县| 涟水县| 平舆县| 小金县| 阿勒泰市| 闽清县| 工布江达县| 江永县| 札达县| 容城县| 吐鲁番市| 玉山县| 临桂县| 商洛市| 龙胜| 平谷区| 台东县| 板桥市| 大同市| 新营市| 尼勒克县| 信阳市| 清流县| 绥化市| 司法| 安义县| 乡城县| 宁德市| 成安县| 贵州省|