c#逐行读取txt数据 并保存一定的项
一篇txt1有很多很多行qsddfgfrterfrtrthggghrtweerfgrtdf。。。。有另一个txt2有sdergh。。。等两个txt进行逐行对比如果有跟tx...
一篇txt1 有很多很多行
q sd df gf rt er
f rt rt hg g gh rt
we er fg rt df
。。。。
有另一个txt2 有 sd er gh。。。 等
两个txt进行逐行对比 如果有跟txt2如相同的行 就保留 剩下的删除 处理后的第一行就是sd er
求具体代码 代码!!代码 完整代码!! 展开
q sd df gf rt er
f rt rt hg g gh rt
we er fg rt df
。。。。
有另一个txt2 有 sd er gh。。。 等
两个txt进行逐行对比 如果有跟txt2如相同的行 就保留 剩下的删除 处理后的第一行就是sd er
求具体代码 代码!!代码 完整代码!! 展开
展开全部
string fn1 = @"C:\test1.txt";
string fn2 = @"C:\test2.txt";
List<string> txt1 = new List<string>();
List<string> txt2 = new List<string>();
System.IO.StreamReader sr1 = new System.IO.StreamReader(fn1);
while (!sr1.EndOfStream) { txt1.Add(sr1.ReadLine()); }
System.IO.StreamReader sr2 = new System.IO.StreamReader(fn2);
while (!sr2.EndOfStream) { txt2.Add(sr2.ReadLine()); }
List<string> txt3 = new List<string>();
int x = txt1.Count > txt2.Count ? txt1.Count : txt2.Count;
for (int i = 0; i < x; i++)
{
if (i < txt1.Count && i < txt2.Count && txt1[i] == txt2[i])
{
txt3.Add(txt1[i]);
}
}
//txt3就是相同行的结果集合
string fn2 = @"C:\test2.txt";
List<string> txt1 = new List<string>();
List<string> txt2 = new List<string>();
System.IO.StreamReader sr1 = new System.IO.StreamReader(fn1);
while (!sr1.EndOfStream) { txt1.Add(sr1.ReadLine()); }
System.IO.StreamReader sr2 = new System.IO.StreamReader(fn2);
while (!sr2.EndOfStream) { txt2.Add(sr2.ReadLine()); }
List<string> txt3 = new List<string>();
int x = txt1.Count > txt2.Count ? txt1.Count : txt2.Count;
for (int i = 0; i < x; i++)
{
if (i < txt1.Count && i < txt2.Count && txt1[i] == txt2[i])
{
txt3.Add(txt1[i]);
}
}
//txt3就是相同行的结果集合
追问
我好像问题描述的有问题 不是相同的行 是只有txt1中有txt2 中的任意一项就保留,txt2很短 就是一个字符串
追答
那你把txt1[i] == txt2[i] 改成 txt1[i].Contains( txt2[i])
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询