File Hash 扩展
File Hash 扩展提供文件哈希计算功能,可以计算文件的 SHA256 和 SHA512 哈希值。同时包含 Base64 文本编码功能。
下载链接
uk.co.metricrat.getfilesha256V0.2.aix
uk.co.metricrat.justbase64.aix - Base64 编码扩展
功能概述
扩展特性
- 计算文件的 SHA256 哈希值
- 计算文件的 SHA512 哈希值(V0.2 版本新增)
- Base64 文本编码功能
- 支持文件路径参数
- 简单易用的函数接口
截图

函数
- GetSHA256 获取SHA256哈希(文件路径) {:.text}
- 计算指定文件的 SHA256 哈希值。
- 文件路径:文本类型,要计算哈希的文件的完整路径
- 返回值:文本类型,计算得到的 SHA256 哈希字符串
- GetSHA512 获取SHA512哈希(文件路径) {:.text}
- 计算指定文件的 SHA512 哈希值。
- 文件路径:文本类型,要计算哈希的文件的完整路径
- 返回值:文本类型,计算得到的 SHA512 哈希字符串
使用示例
基本文件哈希计算
当 计算哈希按钮.被点击
设置 文件路径 为 "/sdcard/test.txt"
设置 sha256结果 = FileHash1.GetSHA256(文件路径)
设置 哈希值标签.文本 = "SHA256: " & sha256结果
同时计算 SHA256 和 SHA512
当 计算按钮.被点击
如果 文件选择器.已选择 则
设置 选中文件路径 = 文件选择器.路径
设置 sha256哈希 = FileHash1.GetSHA256(选中文件路径)
设置 sha512哈希 = FileHash1.GetSHA512(选中文件路径)
设置 sha256标签.文本 = "SHA256: " & sha256哈希
设置 sha512标签.文本 = "SHA512: " & sha512哈希
否则
显示通知 "请先选择文件"
文件完整性验证
当 验证按钮.被点击
设置 原始哈希 = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
设置 当前哈希 = FileHash1.GetSHA256(文件路径文本.文本)
如果 当前哈希 = 原始哈希 则
设置 验证结果.文本 = "文件完整性验证通过"
设置 验证结果.背景颜色 = 绿色
否则
设置 验证结果.文本 = "文件已修改或不完整"
设置 验证结果.背景颜色 = 红色
Base64 编码扩展
Base64 函数
- Encode 编码(文本内容) {:.text}
- 将文本内容编码为 Base64 格式。
- 文本内容:文本类型,要编码的文本内容
- 返回值:文本类型,Base64 编码后的字符串
- Decode 解码(Base64文本) {:.text}
- 将 Base64 文本解码为原始文本。
- Base64文本:文本类型,要解码的 Base64 字符串
- 返回值:文本类型,解码后的原始文本
Base64 使用示例
当 编码按钮.被点击
设置 原始文本 = 文本输入框.文本
设置 编码结果 = Base64Encode1.Encode(原始文本)
设置 Base64输出框.文本 = 编码结果
当 解码按钮.被点击
设置 Base64输入 = Base64输入框.文本
设置 解码结果 = Base64Encode1.Decode(Base64输入)
设置 原始文本输出.文本 = 解码结果
高级应用
批量文件哈希计算
当 批量处理按钮.被点击
设置 文件列表 = 文件管理器.获取文件列表("/sdcard/documents/")
设置 结果列表 = 空文本
对于每项 文件名 在 文件列表
设置 完整路径 = "/sdcard/documents/" & 文件名
设置 文件哈希 = FileHash1.GetSHA256(完整路径)
设置 结果列表 = 结果列表 & 文件名 & ": " & 文件哈希 & 换行符
设置 批量结果.文本 = 结果列表
显示通知 "批量处理完成!"
文件备份验证
当 验证备份按钮.被点击
设置 原始文件哈希 = FileHash1.GetSHA256(原始文件路径.文本)
设置 备份文件哈希 = FileHash1.GetSHA256(备份文件路径.文本)
如果 原始文件哈希 = 备份文件哈希 则
设置 备份状态.文本 = "备份文件与原始文件完全一致"
设置 备份状态.文本颜色 = 绿色
否则
设置 备份状态.文本 = "备份文件与原始文件不一致!"
设置 备份状态.文本颜色 = 红色
注意事项
- 文件路径:必须提供完整的文件路径,包括文件名和扩展名
- 文件访问权限:确保应用有读取目标文件的权限
- 文件大小:大文件的哈希计算可能需要较长时间
- 性能考虑:频繁计算哈希可能影响应用性能
- 错误处理:如果文件不存在或无法访问,函数可能返回空值或错误
技术规格
- 哈希算法:SHA256(256位)、SHA512(512位)
- Base64 编码:标准 Base64 编码算法
- 文件支持:所有文件类型(文本、图片、视频等)
- 系统要求:Android 5.0 及以上版本
- 权限要求:文件读取权限
常见用途
- 文件完整性验证
- 数据校验和计算
- 安全文件传输验证
- 备份文件一致性检查
- 文件去重比较
- 密码存储(建议使用加盐哈希)
相关功能
可以使用 Juan Antonio 的 Terminal 扩展 通过 Linux 命令获取文件的 SHA256 哈希:
sha256sum /absolute/path/to/file
测试环境
- 测试设备:Android 12 设备
- 测试版本:App Inventor Companion 2.62u
- 测试状态:正常工作
版权信息
- 原作者:MetricRat
- 原始网址:https://community.appinventor.mit.edu/t/file-hash-extension/54089
- 发布日期:2022年3月22日
文档最后更新:2025年11月18日
扫码添加客服咨询