python怎样删去csv中重复行_怎么样删除csv表格中的重复行

using System;

using System.Collections.Generic;

using System.IO;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

List list = new List();

List ls = new List();

//读取csv文件

StreamReader fileReader = new StreamReader(@"C:\Users\Administrator\Desktop\test.csv");

string strLine="";

//读取csv的行并存储到泛型列表中

while (strLine != null)

{

strLine = fileReader.ReadLine();

if (strLine != null && strLine.Length>0)

{

TempClass t = new TempClass() { ID = strLine.Split("","")[0], OriginalStr = strLine };

list.Add(t);

}

}

fileReader.Close();

Console.WriteLine("before distinct↓↓↓↓");

Console.WriteLine(list.Count);

//对泛型进行去重

var tempList = list.Distinct(new TempIDComparer());

Console.WriteLine("after distinct↓↓↓↓");

Console.WriteLine(tempList.ToList().Count);

//将去重后的泛型集合写入新的csv文件

StreamWriter fileWriter=new StreamWriter(@"C:\Users\Administrator\Desktop\result.csv",false,Encoding.Default);

foreach(var item in tempList.ToList())

{

fileWriter.WriteLine(item.OriginalStr);

}

fileWriter.Flush();

fileWriter.Close();

Console.ReadKey();

}

}

//将需要比较的列及原始数据行存入对象中

public class TempClass

{

public string ID { get; set; }

public string OriginalStr { get; set; }

}

//实现compare类 用于distinct方法

public class TempIDComparer : IEqualityComparer

{

public bool Equals(TempClass x, TempClass y)

{

if (x == null)

return y == null;

return x.ID == y.ID;

}

public int GetHashCode(TempClass obj)

{

if (obj == null)

return 0;

return obj.ID.GetHashCode();

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值