【问题标题】:Compare Two Files on android and php server比较 android 和 php 服务器上的两个文件
【发布时间】:2017-11-01 05:51:30
【问题描述】:

我正在开发一个应用程序,我必须在其中录制音频文件并上传到服务器。

可能会出现网络中断而文件仅上传一半的情况。

如何将该文件与 android 文件系统上可用的文件进行比较,以便在未成功上传时重新上传文件?

【问题讨论】:

  • 您可以从 HTTP 中受益。如果您还没有完成上传,您将有错误状态或超时

标签: android file upload compare checksum


【解决方案1】:

您可以将校验和与MD5SHA1 等哈希函数进行比较

对于 MD5

假设你使用Java做Android功能会是这样的

 public static String checkSum(String path){
    String checksum = null;
    try {
        FileInputStream fis = new FileInputStream(path);
        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] buffer = new byte[8192];
        int numOfBytesRead;
        while( (numOfBytesRead = fis.read(buffer)) > 0){
            md.update(buffer, 0, numOfBytesRead);
        }
        byte[] hash = md.digest();
        checksum = new BigInteger(1, hash).toString(16);
    } catch (IOException ex) {
    } catch (NoSuchAlgorithmException ex) {
    }

   return checksum;
}

PHP 更简单,你可以使用md5_file 函数

$md5 = md5_file($filepath);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多