我正在开发一个需要每隔几分钟下载一些文件的应用程序。
使用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中使用什么来检查文件的完整性?
答案 0 :(得分:3)
维护checksum list on your server,下载文件generate a checksum of the downloaded file并检查它是否与服务器上的文件相同。如果是,您的文件就可以了。