我的最终目标是编写一个简单的程序,在每周末将一个特定的Google电子表格下载到我的本地硬盘。该文件将由其他人每周编辑一次,我将不断下载更新版本以提取数据并传递给我编写的bash脚本。我现在手动执行此操作,但如果我可以以csv格式下拉电子表格,则可以自动执行整个过程。
我对Google的文档感到有些困惑。我已经复制了他们的示例方法downloadFile
,但我仍然不清楚正在传递的确切参数以及InputStream
返回。
如果我要添加一个main方法来调用downloadFile
方法,那么我传递的示例参数是什么。
然后,我可以使用它返回的InputPut
流来保存文件是csv格式吗?
另外,这是我需要或做的唯一方法还有更多吗?
这里定义了 downloadFile
方法(省略了import语句):
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;
}
}
答案 0 :(得分:0)
对于第二个参数,您需要File类的实例。从我发现的。谷歌的专有文件类中最简单的形式可以用零参数实例化。像这样。
File f = new File();
要构建驱动器对象,有一个如何执行此操作的示例。向下滚动到USE OAUTH 2.0凭据。 https://developers.google.com/drive/credentials