比较文本文件中的字符串
本文关键字:字符串 文件 文本 比较 | 更新日期: 2023-09-27 18:03:07
我有一个文本文件,我需要比较每一行的前8个字符,并将这些行连接为一行,其中有一个匹配。我使用的逻辑是从第一行开始选择每一行,并将其与其他行进行比较,然后移动到第二行,并执行相同的操作,直到最后一行。但是当我尝试遍历其他行进行比较时,我得到错误"索引和长度必须引用字符串中的位置"。
请告知,见下面的代码。
while ((line1 = fileread.ReadLine()) != null)
{
counter2++;
while ((line2 =fileread.ReadLine()) != null)
{
if (line1.Substring(0, 8) == line2.Substring(0, 8))
{
line1 = line1 + " " + line2;
}
counter3++;
}
filewrite.WriteLine(line1);
counter1++;
}
您需要在使用Substring
之前检查ste字符串的长度,使用Length
属性
while ((line2 =fileread.ReadLine()) != null)
{
if (line1.Length >=8 && lines2.Length >=8 &&
line1.Substring(0, 8) == line2.Substring(0, 8))
{
line1 = line1 + " " + line2;
}
counter3++;
}