android黑窗口获取md5_Android获取文件的MD5
什么是MD5
MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。
文件MD5的应用场景
(1)加密
(2)在下载更新APK的时候,与远程服务器的MD5进行匹配,如果下载下来新文件的MD5的与远程的MD5一致,说明下载过程中没有出现丢包。
如何获取文件的MD5
private void getFile(){
String path = Environment.getExternalStorageDirectory().getAbsolutePath();
Log.d("ATG", path);
File file = new File(path+"/e8706cf83a2cda33dae5c40025922d75.apk");
String md5 = getFileMD5(file);
Log.d("ATG", md5);
}
public static String getFileMD5(File file) {
if (!file.isFile()) {
return null;
}
MessageDigest digest = null;
FileInputStream in = null;
byte buffer[] = new byte[1024];
int len;
try {
digest = MessageDigest.getInstance("MD5");
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;
}
return bytesToHexString(digest.digest());
}
public static String bytesToHexString(byte[] src) {
StringBuilder stringBuilder = new StringBuilder("");
if (src == null || src.length <= 0) {
return null;
}
for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
android黑窗口获取md5_Android获取文件的MD5相关推荐
- Spring Boot——获取上传文件的MD5值解决方案
解决方案 方法一: /*** 上传文件* @param file 文件* @return ResponseBean*/@ApiOperation(value = "上传文件",no ...
- php怎么读取上传文件的md5,利用PHP怎么获取远程http文件的md5值
利用PHP怎么获取远程http文件的md5值 发布时间:2021-02-05 18:10:04 来源:亿速云 阅读:61 作者:Leah 本篇文章给大家分享的是有关利用PHP怎么获取远程http文件的 ...
- php怎么读取上传文件的md5,PHP获取上传文件的md5码_PHP教程
由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的方法. if(isset($_FILES['multimedia']) && $_FILE ...
- php获取上传文件的字节,PHP获取上传文件的md5码
原文:http://www.nowamagic.net/librarys/veda/detail/938 由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的 ...
- 获取Android签名打包keystore或者.jks文件的MD5
Android开发,经常会调用第三方,例如在申请第三方的时候,经常会用到MD5等信息,下面是从一个签名打包的key文件里面去获取这些信息. 打开cmd或终端,找到对应的key签名文件,然后输入keyt ...
- linux获取文件的md5,linux shell 获取文件md5的命令linux操作系统 -电脑资料
下面我给各位朋友总结一下在linux中利用shell命令来获取文件md5及遍历目录下所有文件的md5的例子,希望此例子对各位同学会有所帮助, 获取文件的MD5值: $ md5sum linuxmint ...
- 黑窗口下安装MySQL数据库
黑窗口下安装MySQL数据库(这篇是黑窗口下安装并配置mysql的过程以及可能会出现的问题和解决的方法) 博主小G我安装了几次mysql之后被折磨的晕头转向,最近太忙一直没有时间记下来,以至于在同一个 ...
- 操作SD卡,获取文件目录及文件工具类Android,listView
操作SD卡,获取文件目录及文件工具类Android 1.获取文件目录及文件工具类: DirectoryInfo FileScan 1.1 DirectoryInfo: package com.gls ...
- Android获取网络视频文件缩略图
一,通过Android系统自带的类获取: 1. public staticBitmapcreateVideoThumbnail(String filePath,int kind){ Bitm ...
最新文章
- springcloud的fallback与fallbackFactory
- 【Git、GitHub、GitLab】十 将git仓库备份到本地
- 创新小组 实战Git团队企操作手册_精华版本
- 使用hexo创建blog
- 计算机视觉识别简史:从 AlexNet、ResNet 到 Mask RCNN
- 又拍云,音视频CDN加速利器
- 剑指offer面试题[59]-对称的二叉树
- C++程序设计基础(5)sizeof的使用
- 数据科学家应该掌握的12种机器学习算法(附信息图)
- 与速度对偶的角速度系公式
- 管家婆软件二次开发(在管家婆财贸双全中实现建行支付)
- C/C++编程笔记:指针篇!从内存理解指针,让你完全搞懂指针
- 装卸码头设备市场深度分析及发展研究预测报告
- Java笔记16 网络编程
- 纯CSS实现瀑布流布局
- Beanshell解析json-解析简单复杂json数据
- C# GDI 手绘图片转化为电子版处理
- 开发中国最好的视频推荐系统
- 设计模式17-门面模式
- 虚拟服务器 dmz区别,dmz主机和虚拟服务器区别(tp路由器虚拟服务器能干嘛)...