StringBuilder ToString() performance
本文关键字:performance ToString StringBuilder | 更新日期: 2023-09-27 17:54:25
我需要在一个循环中提取许多巨大的stringbuilder(每个大约1mb的数据)的第一行。为此,我考虑这样做:
string header;
foreach(StringBuilder strBuilder in bigArray)
header= strBuilder.ToString().SubString(blabla);
,但我担心。tostring()方法可能需要太长时间才能执行。你知道我怎样才能有效率地做这件事吗?
如果您正在寻找不从StringBuilder
中提取整个字符串的Substring
替代品,您可以使用ToString
的过载,start
和length
:
string header;
foreach(StringBuilder strBuilder in bigArray)
{
header= strBuilder.ToString(start, length);
}
它更快吗?我不知道——你得测量才能确定。
另一种选择是将"lines"存储为字符串数组的集合(或List<List<string>>
),而不是StringBuilder
s的集合。