2017-05-31 80 views
0

我正在開發一個應用程序,我必須記錄音頻文件並在服務器上上傳。比較android和php服務器上的兩個文件

有一種情況下,互聯網可能關閉,文件只上傳一半。

如何將該文件與android文件系統上可用的文件進行比較,以便在文件未成功上傳時重新上傳文件?

+0

您可以從中受益。如果尚未完成上載,則會出現錯誤狀態或超時 – crgarridos

回答

0

那麼您就可以使用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);