Skip to content

Commit 566596e

Browse files
committed
change md5
1 parent 0e4d120 commit 566596e

File tree

1 file changed

+19
-18
lines changed

1 file changed

+19
-18
lines changed

VideoOS/VenvyLibrary/src/main/java/cn/com/venvy/common/utils/VenvyMD5Util.java

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
import android.text.TextUtils;
44

5+
import java.io.File;
6+
import java.io.FileInputStream;
7+
import java.math.BigInteger;
58
import java.nio.charset.Charset;
69
import java.security.MessageDigest;
710
import java.security.NoSuchAlgorithmException;
@@ -94,28 +97,26 @@ private static String SHA(final String strText, final String strType) {
9497
return strResult;
9598
}
9699

97-
public static String EncoderByMd5(String buf) {
100+
public static String EncoderByMd5(File file) {
101+
if (!file.isFile()) {
102+
return null;
103+
}
104+
String encodeMd5String;
98105
try {
99-
MessageDigest digist = MessageDigest.getInstance("MD5");
100-
byte[] rs = digist.digest(buf.getBytes("UTF-8"));
101-
StringBuffer digestHexStr = new StringBuffer();
102-
for (int i = 0; i < 16; i++) {
103-
digestHexStr.append(byteHEX(rs[i]));
106+
MessageDigest digest = MessageDigest.getInstance("MD5");
107+
FileInputStream in = new FileInputStream(file);
108+
byte buffer[] = new byte[1024];
109+
int len;
110+
while ((len = in.read(buffer, 0, 1024)) != -1) {
111+
digest.update(buffer, 0, len);
104112
}
105-
return digestHexStr.toString();
113+
in.close();
114+
BigInteger bigInt = new BigInteger(1, digest.digest());
115+
encodeMd5String = bigInt.toString(16);
106116
} catch (Exception e) {
107117
e.printStackTrace();
118+
encodeMd5String = null;
108119
}
109-
return null;
110-
111-
}
112-
113-
public static String byteHEX(byte ib) {
114-
char[] Digit = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
115-
char[] ob = new char[2];
116-
ob[0] = Digit[(ib >>> 4) & 0X0F];
117-
ob[1] = Digit[ib & 0X0F];
118-
String s = new String(ob);
119-
return s;
120+
return encodeMd5String;
120121
}
121122
}

0 commit comments

Comments
 (0)