遍历寻找json中的重复数据

string str = "[{\"ID\":1,\"Data\":{\"subjectCode\":\"1\",\"subjectName\":\"1\",\"subjectType\":\"1\",\"componentFormat\":\"2\"}},{\"ID\":2,\"Data\":{\"subjectCode\":\"1\",\"subjectName\":\"2\",\"subjectType\":\"1\",\"componentFormat\":\"2\"}},{\"ID\":4,\"Data\":{\"subjectCode\":\"1\",\"subjectName\":\"1\",\"subjectType\":\"1\",\"componentFormat\":\"2\"}}]";
            JavaScriptSerializer jss = new JavaScriptSerializer();
            List<A> aList = jss.Deserialize<List<A>>(str);
            for (int i = 0; i < aList.Count - 1; i++)
            {
                int index = i + 1;
                A a = aList[i];
                while (index < aList.Count)
                {
                    A b = aList[index];
                    if (a.Data.subjectCode.Equals(b.Data.subjectCode) && a.Data.subjectName.Equals(b.Data.subjectName) && a.Data.subjectType.Equals(b.Data.subjectType) && a.Data.componentFormat.Equals(b.Data.componentFormat))
                    {
                        string message = a.ID + "=" + b.ID;
                        Console.WriteLine(message);
                        break;
                    }
                    index++;
                }
            }
            Console.ReadKey();
        }

        public class A
        {
            public int ID { get; set; }
            public B Data { get; set; }
        }

        public class B
        {
            public string subjectCode { get; set; }
            public string subjectName { get; set; }
            public string subjectType { get; set; }
            public string componentFormat { get; set; }
        }
时间: 2024-08-05 20:22:19

遍历寻找json中的重复数据的相关文章

通过双重for循环来找到JSON中不重复的数据

//通过双重for循环来找到JSON中不重复的数据 var count = 0; for ( i=0; i<json.length; i++) { for ( j=0; j<i; j++) { if ( json[j].api_id == json[i].api_id ) { count++; } } if ( count == 0 ) { kong.getApiName( json[i].api_id ); } }

除去文件中的重复数据

1.先对文件内容排序:cat 1.txt |sort > 2.txt 保存到2.txt中 2.使用vim打开2.txt 执行替换命令: 替换空格:%s/ //g 替换tab:%s/^I//g   (注意:^I 是直接按键盘是的tab键) 替换$:  %s/^M//g (注意:^M 是按ctrl+v 再按Enter键) 3.cat 2.txt | uniq > 3.txt 本文为Eliot原创,转载请注明出处:http://blog.csdn.net/xyw_blog/article/detai

MSSQL如何在没有主键的表中删除重复数据

为了对重复数据进行实验,下面建一个设计不太好(没有主键)表并插入了一些重复数据: create database testdb use testdb ; go create table DupsNoPK (Col1 int Null, Col2 char(5) Null ); go insert DupsNoPK(Col1,Col2) Values(1,'abc'), (2,'abc'), (2,'abc'), (2,'abc'), (7,'xyz'), (7,'xyz'); 为了验证表确实有重

Mysql 如何删除数据表中的重复数据!

1.使用distinct查询所有不重复的记录 2.创建数据表相同结构的临时表,将第一步的数据复制进去 create temporary table if not exists student_temp as (select distinct(name), sex from student); 3.truncate table student; 4.insert into student(id,name,sex) select null,name,sex from student_temp; My

oracle删除一个表中的重复数据,且只保留一条

例子1:查找一个表中的重复数据,重复记录是根据单个字段(Id)来判断,表名为STUDENT SELECT ID , COUNT(1) FROM STUDENT T GROUP BY T.ID HAVING COUNT(ID) > 1 例子2:删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录,表名为STUDENT DELETE FROM STUDENT WHERE ID IN (SELECT ID FROM STUDENT T GROUP BY T.ID H

数据库中对重复数据行的查询删除操作

oracle中对重复数据的查询和删除操作 --1.查询表中username='lingjie'的重复记录select userid,username from nmb where username in(select username from nmb group by username having count(username)>1) --2.删除表中username 重复的数据,只保留rowid最小的一条delete from nmb where username in(select us

一些常用的方法(1)--去除DataTable中的重复数据

private DataTable Display(DataTable dtSource)        {            DataTable dtTemp = dtSource.Copy();            foreach (DataRow dr in dtSource.Rows)            {                DataRow[] drRepeat = dtTemp.Select("AA='" + dr["AA"].ToS

去除数组中的重复数据

1 public static String[] array_unique(String[] a) { 2 Set<String> set = new HashSet<String>(); 3 set.addAll(Arrays.asList(a)); 4 return set.toArray(new String[0]); 5 } 去除数组中的重复数据

C# 删除Collections中的重复数据

List去重 通过扩展方法System.Linq.Enumerable.Distinct() 对于简单数据类型,可以简单的调用这个函数就行啦,因为它会使用默认的比较器(System.Collections.Generic.EqualityComparer<T>.Default). Default   属性检查类型 T 是否实现此 System.IEquatable<T> 泛型接口,如果实现,该属性将返回一个包含 IEquatable<T>.Equals 方法的实现的 E