怎样去除两个txt文件中的重复行 求个好点的算法!!!

清茶&浊酒 2012-07-10 04:22:05
如题 !! 例如:A文件存放了上万个手机号(每个手机号一行),B文件也存放了上万个手机号,如何才能快速的同时删除A、B文件中的相同的手机号呢,求大牛帮写个效率点的算法!!!
...全文
435 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
清茶&浊酒 2012-07-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

忘记添加换行了,更正一下:
C# code
string[] phoneNumbers1 = File.ReadAllLines(@"c:\phoneNumber1.txt");
string[] phoneNumbers2 = File.ReadAllLines(@"c:\phoneNumber2.txt");
string[] result……
[/Quote]


谢谢啊 搞定了
高手啊 看来我这菜鸟还得多跟你学习 能做个好友不。。?
鸭梨山大帝 2012-07-10
  • 打赏
  • 举报
回复
仅是上万个手机号,数据量很小.直接读取进内存.然后Distinct(无论自写循环还是使用Linq),效能都不会差.
dalmeeme 2012-07-10
  • 打赏
  • 举报
回复
忘记添加换行了,更正一下:
		string[] phoneNumbers1 = File.ReadAllLines(@"c:\phoneNumber1.txt");
string[] phoneNumbers2 = File.ReadAllLines(@"c:\phoneNumber2.txt");
string[] result1 = phoneNumbers1.Except(phoneNumbers2).ToArray();
string[] result2 = phoneNumbers2.Except(phoneNumbers1).ToArray();
File.WriteAllText(@"c:\phoneNumber1.txt", string.Join("\r\n", result1));
File.WriteAllText(@"c:\phoneNumber2.txt", string.Join("\r\n", result2));
maji_lulu 2012-07-10
  • 打赏
  • 举报
回复
楼主实验楼上的一下啊,看看效果啊
dalmeeme 2012-07-10
  • 打赏
  • 举报
回复
速度不知道,但对上万个手机号应该可以:
		string[] phoneNumbers1 = File.ReadAllLines(@"c:\phoneNumber1.txt");
string[] phoneNumbers2 = File.ReadAllLines(@"c:\phoneNumber2.txt");
string[] result1 = phoneNumbers1.Except(phoneNumbers2).ToArray();
string[] result2 = phoneNumbers2.Except(phoneNumbers1).ToArray();
File.WriteAllText(@"c:\phoneNumber1.txt", string.Concat(result1));
File.WriteAllText(@"c:\phoneNumber2.txt", string.Concat(result2));
蔡袅 2012-07-10
  • 打赏
  • 举报
回复
取出到hash,反存到文本

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧