使用Android Dropbox API检查Dropbox上是否存在文件

时间:2015-05-18 14:53:14

标签: java android dropbox-api

我不是经验丰富的Java / Android开发人员,而且我正在尝试使用适用于Android的Dropbox API检查Dropbox上是否存在文件。

我没有设法在API中找到任何方法来检查这一点。我发现如何执行此操作的唯一方法是使用try ... catch并捕获DropboxServerException,这在我看来非常难看。

有没有更好的方法,比如if (file.exists),检查文件是否存在?

谢谢!

1 个答案:

答案 0 :(得分:0)

调用metadata并查找带有404响应的异常可能是检查Dropbox中是否存在单个文件的最佳方法。

根据您尝试做的事情,可能有更好的方法:

  1. 如果你无论如何都要枚举所有文件(例如使用delta),那么就不需要询问服务器文件是否存在,因为你可以自己跟踪。
  2. 如果您正在尝试阅读该文件,请继续尝试阅读该文件(如果不存在则处理该例外)。
  3. 请注意,这种(伪)代码总是错误的:

    if (file.exists()) {
        file.read();
    }
    

    当您检查文件是否存在以及何时尝试读取文件时,会发生什么?当您尝试读取文件时,您将获得404和异常。因此,您需要处理该代码的代码...这意味着对文件存在的第一次检查不会为您做任何事情。您也可以跳过它(以及相应的服务器往返)。