检查文件+文件夹树的方法(如果存在)

时间:2011-07-03 19:21:36

标签: java android file exists

我的Android应用程序下载~50 MB的数据 - 2500个文件。我想检查文件是否丢失。一个想法是创建一个包含文件所有路径的List,然后检查每个文件if(File.exists())..

但这将导致2500次检查是否存在...
这有更好的方法吗?感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用

列出所有文件
File[] files = mFolder.listFiles();

int totalFiles = files.length;

如果大小与您期望的大小不符,那么您将不得不遍历所有大小,否则继续您的应用程序。

答案 1 :(得分:0)

即使您想要检查所有预期文件是否存在,但仍无法保证其内容状态良好。例如,文件都可以为空。

更好的解决方案是将文件压缩到服务器上的存档中,然后计算存档文件的哈希摘要。有关如何在Java中执行此操作的信息,请参阅MessageDigest JavaDoc

下载存档文件后,您可以在客户端重新计算摘要,并与服务器的版本进行比较,以确认存档已正确下载并保持未损坏。