1

我正在开发一个需要每隔几分钟下载一些文件的应用程序。

使用 php,我列出了所有文件,并从 java 获取此列表并检查文件是否存在。下载后,我需要检查完整性,因为有时在下载后,某些文件已损坏。

try{
    String path = ...
    URL url = new URL(path);
    URLConnection conn = url.openConnection();
    conn.setDoOutput(true);         
    conn.setReadTimeout(30000);
    is = conn.getInputStream();
    ReadableByteChannel rbc = Channels.newChannel(is);
    FileOutputStream fos = null;
    fos = new FileOutputStream(local);
    fos.getChannel().transferFrom(rbc, 0, 1 << 24);
    fos.close();
    rbc.close();
} catch (FileNotFoundException e) {
    if(new File(local).exists()) new File(local).delete();
       return false;
} catch (IOException e) {
    if(new File(local).exists()) new File(local).delete();
       return false;
} catch (IOException e) {
    if(new File(local).exists()) new File(local).delete();
       return false;
}

return false;

我可以在 php 和 java 中使用什么来检查文件完整性?

4

1 回答 1

3

在您的服务器上维护一个校验和列表,下载文件,生成下载文件的校验和并检查它是否与服务器上的相同。如果是的话,你的文件没问题。

于 2013-04-20T08:52:50.577 回答