我有一个Android应用程序,可以正常使用下载一些图像。在大多数情况下,当发生错误(网络,磁盘空间等)时,会引发异常,我只知道并删除Dim cbs = selectedTab.Controls.OfType(Of ComboBox)().ToArray()
Dim cbb = cbs(0)
Dim cbc = cbs(1)
块中的下载文件。
但是,有时,下载未完成,并且显示了图像但将其切断。 (即图像的一半可见,左侧显示为白色)
关于如何检测此错误的任何建议,以便删除文件并要求用户再次下载?
这是代码:
catch
答案 0 :(得分:1)
好吧,我想既然您所解释的图像是一半下载的图像,您可以执行以下操作:检查实际下载了多少图像,然后根据该图像决定是删除还是保留。在您的代码中,行int fileLength = connection.getContentLength();
将帮助您完成此操作。只需检查 fileLength 和下载的图像文件长度是否相等或接近相等即可。如果是,则表示已成功下载。我只是在猜测,代码可能是这样的:
int fileLength = connection.getContentLength();
if (fileLength != -1) {
if (fileLength == file.length()) {
System.out.println("file is complete");
} else {
System.out.println("file is incomplete");
}
} else {
System.out.println("unknown if file is complete");
}
稍作调整,您可能应该得到想要的东西。
OR
greenapps指出,您还可以使用这种方法:
int totalcount = 0;
totalcount += count;
循环增加