]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/far/FarMd5.java
1. Support to Create/Update/Delete/Install far file
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / far / FarMd5.java
diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/far/FarMd5.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/far/FarMd5.java
new file mode 100644 (file)
index 0000000..c7b97c5
--- /dev/null
@@ -0,0 +1,40 @@
+/** @file\r
\r
+ The file is used to caculate file MD5 value.\r
\r
+ Copyright (c) 2006, Intel Corporation\r
+ All rights reserved. This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution.  The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
+ **/\r
+package org.tianocore.frameworkwizard.far;\r
+\r
+import java.io.File;\r
+import java.io.FileInputStream;\r
+import java.security.MessageDigest;\r
+\r
+public class FarMd5 {\r
+\r
+    static public String md5(File file) throws Exception {\r
+        byte[] buffer = new byte[(int) file.length()];\r
+        FileInputStream fInput = new FileInputStream(file);\r
+        fInput.read(buffer);\r
+        fInput.close();\r
+        return md5(buffer);\r
+\r
+    }\r
+\r
+    static public String md5(byte[] buffer) throws Exception {\r
+        MessageDigest md = MessageDigest.getInstance("MD5");\r
+        byte[] md5 = md.digest(buffer);\r
+        return new String(String.format("%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s", md5[0], md5[1], md5[2], md5[3], md5[4],\r
+                                        md5[5], md5[6], md5[7], md5[8], md5[9], md5[10], md5[11], md5[12], md5[13],\r
+                                        md5[14], md5[15]));\r
+\r
+    }\r
+}\r