在字符串操作上使用子字符串
本文关键字:字符串 操作上 | 更新日期: 2023-09-27 18:35:08
我有一个字符串长度为 66 的字符串
然后我显示它,使用这个:
string.Substring(0, 20);
string.Substring(21, 40);
string.Substring(41, 60); --Error here
string.Substring(61, string.Length)
为什么我收到一个错误说这个。索引和长度必须引用字符串中的位置。参数名称:长度
有什么想法吗?谢谢!
好吧,
子字符串的第一个参数是起始位置
子字符串的第二个参数是长度,而不是结束位置
41 + 60 = 101
=> 它比 66 多一点。
你应该使用
string.Substring(0, 20);
string.Substring(21, 20);
string.Substring(41, 20);
string.Substring(61, 5);
编辑:
const int Length = 20;
var str = "myString";
var i = 0;
var list = new List<string>();
do {
list.Add(str.Substring(i *Length, Math.Min(str.Length - (i*Length), Length)));
i++;
}while (str.Length > i*Length);
C# 子字符串方法中的第二个参数是 length,在最后两个示例中,没有那么多字符可以获取子字符串。