Getting a File's MD5 Checksum in Java

To get a file's MD5 checksum in Java, you can use the MessageDigest class from the java.security package. Here's an example of how you can use MessageDigest to calculate the MD5 checksum of a file:

import java.io.FileInputStream;
import java.security.MessageDigest;

public class Main {
    public static void main(String[] args) throws Exception {
        // Read the file into a byte array
        FileInputStream fis = new FileInputStream("file.txt");
        byte[] data = new byte[fis.available()];
        fis.read(data);
        fis.close();

        // Calculate the MD5 checksum
        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] checksum = md.digest(data);

        // Print the checksum as a hexadecimal string
        System.out.println(toHexString(checksum));
    }

    private static String toHexString(byte[] bytes) {
        StringBuilder sb = new StringBuilder();
        for (byte b : bytes) {
            sb.append(String.format("%02X", b));
        }
        return sb.toString();
    }
}

This code reads the contents of a file into a byte array, calculates the MD5 checksum of the data, and prints the checksum as a hexadecimal string.

Note that this example uses the MessageDigest.getInstance("MD5") method to get a MessageDigest instance for the MD5 algorithm. You can use a similar approach to calculate the checksum of a file using other algorithms, such as SHA-1 or SHA-256. Just replace the string passed to getInstance() with the name of the desired algorithm.