欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java 对文件进行 CRC32 校验,javacrc32,文件校验是确保文件内容不

来源: javaer 分享于  点击 13197 次 点评:79

Java 对文件进行 CRC32 校验,javacrc32,文件校验是确保文件内容不


文件校验是确保文件内容不被篡改的方法

import java.util.zip.CheckedInputStream;import java.util.zip.CRC32;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/** * ----------------------------------------------------------------------------- * Used to provide an example of how to calculate the checksum of a file using * the CRC-32 checksum engine. * * @version 1.0 * @author  Jeffrey M. Hunter  (jhunter@idevelopment.info) * @author  <a href="http://www.idevelopment.info">http://www.idevelopment.info * ----------------------------------------------------------------------------- */public class ChecksumCRC32 {    private static void doChecksum(String fileName) {        try {            CheckedInputStream cis = null;            long fileSize = 0;            try {                // Computer CRC32 checksum                cis = new CheckedInputStream(                        new FileInputStream(fileName), new CRC32());                fileSize = new File(fileName).length();            } catch (FileNotFoundException e) {                System.err.println("File not found.");                System.exit(1);            }            byte[] buf = new byte[128];            while(cis.read(buf) >= 0) {            }            long checksum = cis.getChecksum().getValue();            System.out.println(checksum + " " + fileSize + " " + fileName);        } catch (IOException e) {            e.printStackTrace();            System.exit(1);        }    }    /**     * Sole entry point to the class and application.     * @param args Array of String arguments.     */    public static void main(String[] args) {        if (args.length != 1) {            System.err.println("Usage: java ChecksumCRC32 filename");        } else {            doChecksum(args[0]);        }    }}//该片段来自于http://byrx.net
相关栏目:

用户点评