我正在制作一个减少字符串数组行索引的代码。我的阵列是这样的:如何递减字符串数组中行的索引?
1.ExampleFirst\n
SomeText\n
SomeOtherText\n
FinalLine\n\n
2.ExampleSecond\n
SomeText\n
SomeOtherText\n
FinalLine\n\n
等等。线的长度不一样。 我想要的文字是这样的:
0.ExampleFirst\n
SomeText\n
SomeOtherText\n
FinalLine\n\n
1.ExampleSecond\n
SomeText\n
SomeOtherText\n
FinalLine\n\n
我有此代码:
int s = 0;
while(s < lineCounter.Count())
{
if (int.TryParse(lineCounter[s].Substring(0, 1), out v) == true && lineCounter[s] != "\n")
{
int m = int.Parse(lineCounter[s].Substring(0,1));
lineCounter[s].Remove(0, lineCounter[s].IndexOf(".")).Insert(0, (m - 1).ToString());
Console.WriteLine(lineCounter[s]);
}
else
Console.WriteLine(lineCounter[s]);
s++;
“如果”,只有当行包含的数量,当行不被执行新队。 else执行写入数组中的其他行(我使用console.writeLine查看结果,我知道我必须更改该部分) 执行此代码时,我在“如果”声明:
类型‘System.ArgumentOutOfRangeException’未处理的异常出现在mscorlib.dll
其他信息:索引和长度必须引用在字符串中的位置。
对我来说,这意味着即使遇到第一个文本块的最后一行和第二个文本块的第一行之间的新行,也会执行“if”。我无法解释为什么。请帮助!
你的意思是'0'和'1'是文本的一部分? – GolezTrol
本来是不错的,如果你会提供一个可编译的代码,会产生你的问题...我无法重现它,但下面你会发现一个基于你的代码片段工作示例代码... – DarkSquirrel42