「java批量比对」java大量数据比对

博主:adminadmin 2022-11-29 20:05:08 88

今天给各位分享java批量比对的知识,其中也会对java大量数据比对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何快速比较两个文件是否相同

计算MD5或SHA-1,一样的就是同一个文件

下面的代码,不需要额外使用第三方组件,且支持超大文件

// 计算文件的 MD5 值

publicstatic String getFileMD5(File file) {

    if (!file.isFile()) {

        return null;

    }

    MessageDigest digest = null;

    FileInputStream in = null;

    byte buffer[] = newbyte[8192];

    int len;

    try {

        digest =MessageDigest.getInstance("MD5");

        in = new FileInputStream(file);

        while ((len = in.read(buffer)) != -1) {

            digest.update(buffer, 0, len);

        }

        BigInteger bigInt = new BigInteger(1, digest.digest());

        return bigInt.toString(16);

    } catch (Exception e) {

        e.printStackTrace();

        return null;

    } finally {

        try {

            in.close();

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

 

}

// 计算文件的 SHA-1 值

publicstatic String getFileSha1(File file) {

    if (!file.isFile()) {

        return null;

    }

    MessageDigest digest = null;

    FileInputStream in = null;

    byte buffer[] = newbyte[8192];

    int len;

    try {

        digest =MessageDigest.getInstance("SHA-1");

        in = new FileInputStream(file);

        while ((len = in.read(buffer)) != -1) {

            digest.update(buffer, 0, len);

        }

        BigInteger bigInt = new BigInteger(1, digest.digest());

        return bigInt.toString(16);

    } catch (Exception e) {

        e.printStackTrace();

        return null;

    } finally {

        try {

            in.close();

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

}

java中怎么对两组大批量数据进行比较

/**

* 使用Map和List的特性进行匹配:

* Map为key-value结构,不能放重复数据

* List可以放重复数据

* 使用String型id做key,ListPerson做value

* 遍历ListString, map.get(String)则取出id == str 的list

*/

java 数据比对功能 求帮助

有很多种方法

第一种,将数据全部加载到内存,进行比对:现将excel的每条数据解析成对应的对象,然后循环遍历跟你数据库出来的数据进行对比,这种方式比较吃性能;

第二种,将excel内的数据加到数据库去生成一张临时表,用数据的inser into  excel临时表   select  原数据表  然后把不同的加进去,在把临时表导出来成excel,还有一种是前端进行比对的,就更坑了,所以建议用第二种

在JAVA中多个字符串如何比较大小

使用 String.compareTo 方法:

compareTo() 的返回值是int, 它是先比较对应字符的大小(ASCII码顺序)

1、如果字符串相等返回值0

2、如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值)(负值前字符串的值小于后字符串,正值前字符串大于后字符串)

3、如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度.

例:

String s1 = "abc";

String s2 = "abcd";

String s3 = "abcdfg";

String s4 = "1bcdfg";

String s5 = "cdfg";

System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1长度小1)

System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1长度小3)

System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII码是97,"1"的的ASCII码是49,所以返回48)

System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII码是97,"c"的ASCII码是99,所以返回-2)

关于java批量比对和java大量数据比对的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-29,除非注明,否则均为首码项目网原创文章,转载请注明出处。