繁体   English   中英

使用Java从Google云端硬盘下载文件

[英]Download File from Google Drive in Java

我的最终目标是编写一个简单的程序,每星期结束时将一个特定的Google电子表格下载到我的本地硬盘中。 该文件将由其他人每周进行一次编辑,我将不断需要下载更新的版本以提取数据并传递给我编写的bash脚本。 我现在是手动执行此操作,但是如果我可以使用csv格式下拉电子表格,则可以自动化整个过程。

Google的文档让我有些困惑。 我已经复制了他们的示例方法downloadFile ,但是仍然不清楚传递的确切参数以及InputStream返回。

如果要添加一个主方法来调用downloadFile方法,那么我传递的示例参数将是什么。

然后,我可以使用它返回的InputPut流来保存csv格式的文件吗?

另外,这是我唯一需要或做的唯一方法吗?

在这里定义了downloadFile方法(忽略了导入语句):

private static InputStream downloadFile (Drive service, File file) {
    if (file.getDownloadUrl() !=null && file.getDownloadUrl().length() > 0) {
        try {
            HttpResponse resp = service.getRequestFactory().buildGetRequest(new GenericUrl(file.getDownloadUrl())).execute();
            return resp.getContent();
        }
        catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }
    else {
        return null;
    }
}

对于第二个参数,您需要File类的实例。 从我所发现的。 最简单形式的Google专有File类可以用零参数实例化。 像这样。

File f = new File();

要构建驱动器对象,有一个有关如何执行驱动器的示例。 向下滚动到USE OAUTH 2.0凭据。 https://developers.google.com/drive/credentials

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM