我正在从数据库中获取一个长度为 80k 到 90K 个字符的字符串。
我想删除所有前导white-spaces并获取substring大约 50k 个字符并将其存储到 aStringBuilder中,因为我必须将其作为参数传递给另一个函数。
代码:
StringBuider sb = new StringBuilder(dr["str"].ToString().TrimStart().SubString(0,50000));
但我得到以下异常:
mscorlib.dll 中出现“System.ArgumentOutOfRangeException”类型的未处理异常
附加信息:索引和长度必须引用字符串中的位置。
可以肯定的是,即使在修剪之后,字符串也会有超过 50k 个字符。
如果我先进行修剪然后获取子字符串,那么它可以正常工作。背后的原因可能是什么?不能substring() 在飞来飞去的弦上演奏吗?