我从服务中获取了大量的xml文件,而且我遇到了readtoend的一些性能问题,这需要大约2分钟来完成3次replace()和1.3分钟而不使用replace()。
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
{
result = sr.ReadToEnd().Replace("\n", "").Replace("\r", "").Replace("\t", "");
sr.Close();
//ReadToEnd it is taking about 2 minutes to complete
}
用什么来克服这个性能问题。
被修改 xml文件大小为2.77 MB
答案 0 :(得分:2)
当你使用.Replace(“\ n”,“”)你实际上复制了整个字符串,在这种情况下你做了3次,一个更好的方法是将它读入String builder并在那里进行替换,你可以还可以一次从字符串构建器中读取和添加一个字符,并跳过不需要的字符。