Rev | Line | |
---|
[804] | 1 | package net.oni2.aeinstaller.backend;
|
---|
| 2 |
|
---|
| 3 | import java.io.File;
|
---|
| 4 | import java.io.FileInputStream;
|
---|
| 5 | import java.io.FileNotFoundException;
|
---|
| 6 | import java.io.IOException;
|
---|
| 7 | import java.io.InputStream;
|
---|
| 8 | import java.security.DigestInputStream;
|
---|
| 9 | import java.security.MessageDigest;
|
---|
| 10 | import java.security.NoSuchAlgorithmException;
|
---|
| 11 |
|
---|
| 12 | /**
|
---|
| 13 | * @author Christian Illy
|
---|
| 14 | */
|
---|
| 15 | public class FileChecksum {
|
---|
| 16 |
|
---|
| 17 | /**
|
---|
| 18 | * Calculate MD5 checksum of file
|
---|
| 19 | *
|
---|
| 20 | * @param f
|
---|
| 21 | * File to calc checksum on
|
---|
| 22 | * @return Checksum
|
---|
| 23 | */
|
---|
| 24 | public static byte[] calculateFileMD5(File f) {
|
---|
| 25 | MessageDigest md = null;
|
---|
| 26 | InputStream is = null;
|
---|
| 27 | InputStream dis = null;
|
---|
| 28 | byte[] md5 = null;
|
---|
| 29 | try {
|
---|
| 30 | md = MessageDigest.getInstance("MD5");
|
---|
| 31 | is = new FileInputStream(f);
|
---|
| 32 | dis = new DigestInputStream(is, md);
|
---|
| 33 | byte data[] = new byte[1024];
|
---|
| 34 | while (dis.read(data) > 0) {
|
---|
| 35 | }
|
---|
| 36 | md5 = md.digest();
|
---|
| 37 | } catch (NoSuchAlgorithmException e) {
|
---|
| 38 | e.printStackTrace();
|
---|
| 39 | } catch (FileNotFoundException e) {
|
---|
| 40 | e.printStackTrace();
|
---|
| 41 | } catch (IOException e) {
|
---|
| 42 | e.printStackTrace();
|
---|
| 43 | } finally {
|
---|
| 44 | if (dis != null) {
|
---|
| 45 | try {
|
---|
| 46 | dis.close();
|
---|
| 47 | } catch (IOException e) {
|
---|
| 48 | e.printStackTrace();
|
---|
| 49 | }
|
---|
| 50 | }
|
---|
| 51 | }
|
---|
| 52 | return md5;
|
---|
| 53 | }
|
---|
| 54 |
|
---|
| 55 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.