网上找了半天没找到,人懒没药医
public class SHA256File {
String official_checksum = "";
void OnEncFile(){
System.out.println("Getting file...");
File file = new File("pycharm-community-2016.2.3.exe");
if (file.exists()) {
System.out.println("File got.");
}else {
System.err.println("File not got.");
}
System.out.print("Calcuclating SHA-256 checksum......");
String FileSHA256 = getFileSHA256(file);
System.out.println();
System.out.println("File's SHA-256 checksum is: ");
System.out.println(FileSHA256);
System.out.println(official_checksum+" --- the official
checksum");
if (official_checksum.equals(FileSHA256)) {
System.out.println("SHA-256 checksums are the same.");
}else {
System.err.println("SHA-256 checksums differ!!!!" );
}
}
private String getFileSHA256(File file) {
if (!file.isFile()){
System.err.println("not
file");
return null;
}
MessageDigest digest =
null;
FileInputStream
in=null;
byte buffer[] = new
byte[1024];
int len;
try {
digest =
MessageDigest.getInstance("SHA-256");
in = new
FileInputStream(file);
while ((len =
in.read(buffer, 0, 1024)) != -1) {
digest.update(buffer, 0,
len);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
return null;
}
BigInteger bigInt = new
BigInteger(1, digest.digest());
return
bigInt.toString(16);
}
}
直接拿之前网上找的给文件算MD5改的………………